Если нет у заказчика четкого ТЗ хотя бы в его голове, т.е. он еще точно сам не знает, что он хочет, то это 99% просто прицениваются и хотят узнать примерную цену проекта. И не факт, что они проект делать будут. Поэтому и бюджета у них нет, бюджет не выделен и не запланирован. Таким и оценку можно давать приблизительную, называть сразу в пределах от Х до У и что это ориентировочно, с оговоркой, что точная оценка стоимости будет после получения окончательной версии ТЗ.
После получения ТЗ выставляешь заказчику цену на составление и расчет калькуляции работ по его ТЗ, сколько там часов на это уйдет, чтобы расписать, что в рамках ТЗ будет делаться и сколько каждый пункт по времени потянет.
Когда все детально распишешь, то и сам уже увидишь сколько нужно времени, и заказчик получит не цену из пальца, а калькуляцию. Если заказчик будет с общей ценой не согласен, то предлагай ему вычеркнуть из калькуляции некоторые пункты, чтобы уменьшить цену проекта. Но зато он тебя не будет дожимать по цене тебе в убыток.