Как написать ТЗ на сайт, чтобы не переплатить
Самое дорогое в разработке сайта — не дизайн и не код, а переделка того, что все поняли по-разному. Я фронтендер, и половина моих переделок начиналась с одной расплывчатой строчки в ТЗ. Вот как мы научились этого избегать.
Shahzodjon JumakulovФронтенд-разработчик
В одном из первых проектов, где я отвечал за фронтенд, в ТЗ была строчка: «Удобный поиск по сайту». Я сделал строку поиска в шапке с подсказками. Через две недели клиент посмотрел и спросил, где фильтры по цене и городу. Под «поиском» он имел в виду каталог с фильтрами. Это ещё неделя работы, которую никто не заложил в смету.
Никто не был виноват. Просто два человека прочитали одно слово по-разному.
С тех пор я отношусь к ТЗ не как к бюрократии, а как к способу сэкономить деньги клиента. Хорошее ТЗ на сайт не обязательно длинное. Нам хватает одной страницы, если на ней правильные вещи.
Зачем ТЗ, если можно просто созвониться
Созвон нужен. Но через месяц никто не помнит, о чём договорились на созвоне. ТЗ фиксирует договорённость, и к нему можно вернуться, когда возникает спор «а мы же говорили».
Есть и практическая сторона. Мы оцениваем проект в часах. Если в ТЗ написано «личный кабинет», это может быть 20 часов, а может быть 200. Когда требование размыто, исполнитель закладывает запас. Честный закладывает умеренный, нечестный — с потолка. В обоих случаях вы платите за неопределённость.
“Мне не нужно двадцать сайтов, которые вам нравятся. Мне нужны три, которые нравятся, и один, который точно нет. По второму я пойму вас быстрее.”
Шаблон ТЗ на одну страницу
Вот шаблон, который мы присылаем клиентам. Скопируйте, заполните своими словами, без технических терминов. Если на какой-то пункт нет ответа, напишите «не знаю». Это тоже ответ, и мы его обсудим.
1. О компании: чем занимаемся, для кого, в каком городе/странах.
2. Цель сайта: одна главная (заявки / доверие / продажи / найм).
3. Целевое действие: что посетитель должен сделать? Куда уходит заявка?
4. Аудитория: кто они, с какого устройства, на каком языке читают.
5. Языки: uz (латиница/кириллица), ru, en — какие нужны сразу.
6. Страницы: список разделов. Что обновляется часто и кем.
7. Функции: каталог, фильтры, оплата, бронь, калькулятор, личный кабинет.
8. Контент: есть ли тексты, фото, видео, логотип, брендбук.
9. Примеры: 3 сайта, которые нравятся, 1 — который нет, и почему.
10. Сроки и бюджет: к какой дате и в каком диапазоне.
11. Доступы: есть ли домен и хостинг, на чьё имя.
Одиннадцать пунктов. Обычно клиент заполняет его минут за тридцать. Самые важные — второй, третий и седьмой. Если на них ответ чёткий, остальное можно уточнить по ходу.
Расплывчато и точно: примеры из реальных ТЗ
Самая частая проблема не в том, что в ТЗ чего-то нет. Проблема в словах, которые звучат конкретно, но ничего не значат: «современный», «удобный», «как у конкурентов», «адаптивный». Ниже — пары из ТЗ, которые нам присылали, с тем, как мы их переписали вместе с клиентом.
| Было | Стало |
|---|---|
| Удобная форма заявки | Форма из 3 полей: имя, телефон, услуга. Заявка приходит в Telegram-группу отдела продаж за секунды |
| Современный дизайн | Светлый, много воздуха, фото команды, без стоковых картинок. Референсы: сайт A, сайт B |
| Сайт на трёх языках | ru основной, uz латиница, en — только главная и контакты на старте |
| Чтобы быстро грузился | Главная открывается на мобильном 3G за 3 секунды, картинки в WebP |
| Калькулятор стоимости | Ввод ZIP «откуда» и «куда», тип машины → цена сразу на экране, заявка сохраняется в базе и уходит менеджеру |
Последняя строка — почти дословно задача из проекта IBN Express, американской компании по перевозке автомобилей. Там было понятно с первого дня, что «калькулятор» — это сердце сайта, и мы заложили на него отдельное время: автодополнение американских ZIP-кодов, сохранение лида, отправку в Telegram-канал продажников. Если бы в ТЗ было только «калькулятор», оценка промахнулась бы в разы.

Что мы спрашиваем в первом разговоре в Telegram
Большинство клиентов приходят к нам через Telegram, и первый разговор часто проходит там же, текстом или голосовыми. Мы не начинаем с цены. Сначала задаём несколько вопросов, и по ответам уже видно, какой это проект.
- Что продаёте и кому. Не «мы IT-компания», а «настраиваем 1С для оптовиков в Ташкенте». От этого зависит структура и тон.
- Что должно случиться после визита на сайт. Звонок, сообщение в Telegram, покупка, запись. Одно главное действие.
- Где сейчас клиенты. Instagram, Telegram-канал, сарафан, 2GIS. Сайт должен работать вместе с этим, а не вместо.
- Кто будет обновлять сайт. Если менеджер, нужна понятная админка. Если никто, можно проще.
- Что уже есть. Логотип, тексты, фото, старый сайт, домен. Старый сайт важен: если он в Google, нужны редиректы.
- Когда и сколько. Дата, к которой привязан запуск (выставка, сезон, набор), и диапазон бюджета.
На шестом вопросе многие стесняются. Зря. Если вы скажете «до $1 500», мы предложим лучшее, что можно сделать за эти деньги, а не будем рисовать проект на $5 000, от которого вы потом откажетесь. Ориентиры по ценам есть на странице разработки сайтов.
Чего не надо писать в ТЗ
Есть вещи, которые раздувают документ, но не помогают.
Технологии. Если вы не разработчик, не пишите «на React» или «на WordPress». Напишите, что вам важно: чтобы сайт быстро открывался, чтобы его можно было править без программиста, чтобы через год его мог поддерживать другой подрядчик. Стек подберём под эти требования. Например, сайт Japanese Garden мы сделали как PWA, который работает офлайн: посетитель в саду видит часы работы, билеты и чайные церемонии, даже если связь пропала. В требованиях слова «PWA» не было и не должно было быть. Было то, что нужно посетителю.
Цвета в HEX без бренда. Если брендбука нет, лучше сказать «нам нравится спокойное, зелёное, ближе к природе» и показать примеры. Дизайнер переведёт это в палитру лучше, чем случайный #3A7F2C.
Сорок страниц про каждый раздел. На стадии ТЗ хватит списка разделов и одной строки, что в каждом. Детали — на этапе прототипа.
Что делать с ТЗ дальше
ТЗ — не финальный документ. Мы берём вашу страницу, задаём уточняющие вопросы и превращаем её в прототип: серые экраны без дизайна, где видна структура и путь пользователя. Над прототипом обычно работает Муроджон, и именно там всплывают вещи, о которых не подумал никто. На PlanBaby, например, в одном продукте живут статьи, истории, база детских имён, инструменты и магазин с корзиной. В ТЗ это пять строчек, а на прототипе сразу видно, где эти разделы пересекаются и куда пользователь идёт дальше.
После прототипа оценка становится точной, и в договоре появляется то, что действительно будет сделано.
Мой совет простой: не ищите идеальный шаблон ТЗ в интернете на тридцать страниц. Заполните одиннадцать пунктов выше честно, особенно цель и целевое действие. Это сэкономит вам больше, чем любой торг о цене.





