Суть урока
В каждом районе есть стоматология где телефон звонит без ответа. Салон красоты где администратор уволилась и записи теряются. Парковка где после 18:00 никто не берёт трубку. Эти бизнесы теряют клиентов — просто потому что некому ответить.
Voice agent — это виртуальный секретарь который никогда не устаёт, не болеет, не идёт в отпуск и работает 24/7. Он берёт трубку с первого гудка, говорит человеческим голосом, записывает на приём, отвечает на типичные вопросы, переводит сложные случаи на живого человека.
Ты не строишь Siri или ChatGPT. Ты строишь специализированного работника для одного конкретного бизнеса — стоматологии у дома или ресторана через дорогу. И предлагаешь его за фиксированную ежемесячную плату. Суммы в уроке (например, $500 в месяц) — примеры для расчёта, а не прогноз дохода и не рекомендация цены: считай себестоимость по актуальным тарифам и ориентируйся на свой рынок.
За 7 дней мы пройдём полный цикл: от поиска первого клиента до запуска работающего агента который принимает реальные звонки.
🎯 End state Day 7
Через неделю у тебя должно быть:
- ✅ Vapi + Twilio + Claude API конфигурация answering реальные звонки
- ✅ Первый SMB-клиент подключён (пилот или платный, условия вы согласуете сами)
- ✅ Dashboard с транскриптами всех звонков (для клиента)
- ✅ Reusable template для следующих 5+ клиентов
- ✅ Cold outreach playbook: что писать, кому и какой отклик ты получил
НЕ цель Day 7: идеальный AGI-агент, 10 клиентов сразу, полностью автономный flow. Цель — один работающий контур, первый клиент, понимание экономики.
Stack и экономика
Компоненты и цены
Цены меняются: актуальные условия смотри на сайтах сервисов, цены Claude — на странице Актуальное сейчас.
| Компонент | Цена | Что делает |
|---|---|---|
| Vapi platform fee | $0.05/мин (ТОЛЬКО orchestration, на октябрь 2026) | Склеивает STT + LLM + TTS pipeline |
| STT (например, Deepgram или модели распознавания OpenAI) | по тарифу провайдера | Распознавание речи |
| Claude API | Sonnet 5.5 — $2 / $10, Haiku 4.5 — $1 / $5 за 1 млн токенов (вход / выход, на октябрь 2026) | LLM brain (Sonnet для booking, Haiku для FAQ) |
| ElevenLabs TTS | подписка Starter $6/мес или Creator $22/мес (на октябрь 2026), расход зависит от объёма | Премиум TTS голос |
| Twilio | плата за номер и за минуты, по тарифу | Телефонный номер + carrier connection |
| Calendly API | условия смотри на сайте | Booking integration |
Реальная стоимость на минуту разговора (full stack)
Vapi platform: $0.05 (на октябрь 2026, только платформа) STT: по тарифу провайдера Claude API: зависит от модели и длины разговора ElevenLabs TTS: по тарифу Twilio: по тарифу --- Итого: сумма пяти строк, считай по своим тарифам
⚠️ Не путать с маркетинговым "$0.05/мин" — это ТОЛЬКО Vapi platform fee. Реальный full stack заметно дороже: оплата распознавания, LLM, голоса и телефонии идёт отдельно.
Расчёт на месяц: (звонков в месяц) × (средняя длительность в минутах) × (стоимость минуты по твоим тарифам). Для бюджета закладывай запас: дорогая модель для сложных звонков, более дешёвая для FAQ.
Pricing для клиента
Три модели:
- Per-minute: клиент платит за каждую минуту разговора
- Flat retainer: фиксированная сумма в месяц с лимитом минут и доплатой сверху
- Hybrid: плата за настройку + оплата за минуты (для крупных бизнесов)
Для небольшого бизнеса часто понятнее flat retainer: клиенту ясно, сколько платить, тебе предсказуемо. Сумму определяешь по своей себестоимости и рынку (в примерах урока — $500 в месяц).
Ключевые концепции
- Voice agent — programmatic flow: входящий звонок → STT (распознавание речи) → LLM (Claude генерирует ответ) → TTS (синтез голоса) → ответ абоненту. Цикл повторяется на каждой реплике
- Vapi — managed платформа которая склеивает STT/LLM/TTS pipeline, обрабатывает interruptions, латентность, edge cases. Альтернативы: Retell AI, Bland AI
- Twilio Programmable Voice — телефонный carrier который даёт реальный phone number и SIP connection к Vapi
- System prompt — главный артефакт voice agent. Определяет личность, brand, знания о бизнесе, что можно/нельзя говорить
- Tool calling — Claude вызывает функции прямо во время разговора (book_appointment, check_hours, transfer_to_human)
- Conversation flow — последовательность типичных user intents: greeting → identify need → action → confirmation → close
- Latency budget — общее время от конца реплики клиента до начала ответа агента. Цель: <1 секунды. Иначе разговор "ломается"
Теория
Почему voice agents — перспективная ниша 2026
Три параллельных тренда:
- STT/TTS качество перешло порог. ElevenLabs, OpenAI Realtime, Vapi default voices — на типичной телефонной линии звучат очень близко к человеку. Ещё пару лет назад все слышали "робота"
- SMB всё ещё теряет звонки. Малый бизнес часто не успевает ответить на все входящие, а потерянный звонок — это потенциально потерянный клиент
- Цена заметно упала за последние годы. Полный стек стоит достаточно мало, чтобы малый бизнес мог позволить себе голосового агента
Окно возможностей есть, но неизвестно, как долго оно будет открыто: рынок может насытиться крупными игроками (как с chatbots в 2017-2019). Локальную нишу solo-специалист занять может, но гарантий нет.
Какой бизнес — правильный target
Не все SMB — одинаковые клиенты. Voice agent работает лучше всего там где:
- Высокая стоимость одного клиента (LTV выше, чем плата за твой сервис). Один пациент стоматолога приносит заметно больше, чем один клиент пиццерии, поэтому стоматологу проще окупить такой сервис
- Стандартизированная коммуникация. "Запиши на удаление зуба" — повторяющийся flow. "Подбери букет под настроение жены" — нет
- Высокий процент пропущенных звонков — клиент сам осознаёт боль
- Один локейшн или маленькая сеть. Не корпоративные сети — там нужен enterprise sales
Топ-5 ниш (по приоритету):
- Стоматология ⭐ — высокий LTV, стандартный flow (запись + insurance + основные вопросы)
- Ветклиника — эмоциональные клиенты, телефон критичен, чёткая структура appointments
- Юридическая контора (семейное право, immigration) — high LTV, много FAQ
- Локальный салон красоты (4+ мастера) — много звонков, простые услуги
- Риелтор (boutique agency) — звонки в нерабочее время, high LTV
Избегай: рестораны (низкий LTV), пиццерии (тебя обгонит ChowNow), таксопарки (телефон уже автоматизирован)
Архитектура звонка
┌─────────────┐ ┌─────────────┐ ┌──────────────┐
│ Клиент │───▶│ Twilio │───▶│ Vapi │
│ набирает │ │ (номер) │ │ (pipeline) │
└─────────────┘ └─────────────┘ └──────┬───────┘
│
▼
┌──────────────┐
│ STT │
│ (Deepgram) │
└──────┬───────┘
│
▼
┌──────────────┐
│ Claude API │
│ + tools │
└──────┬───────┘
│
▼
┌──────────────┐
│ TTS │
│ (ElevenLabs)│
└──────┬───────┘
│
▼
обратно клиентуVapi скрывает всю сложность — ты конфигурируешь YAML/JSON, Vapi сам обрабатывает потоки.
DAY 1: Niche + first prospect
Цель дня: идентифицировать 20 target бизнесов, связаться с 5, договориться о 2-3 prospect calls.
Hour 1-2: Target list
Открываешь Google Maps. Ищешь в своём городе (или другом если работаешь remote):
"dentist near [city]" "veterinary clinic [city]" "immigration lawyer [city]"
Для каждого бизнеса смотришь:
- Количество отзывов — >50 = активный бизнес
- Рейтинг — 4.0-4.6 = есть room for improvement. 4.9 = слишком perfect, скорее всего семейный бизнес и не наймут постороннего
- Свежие негативные отзывы — золото. Особенно: "calling for days, no answer", "left voicemail, never called back", "phone always busy". Это твой sales pitch
Сохраняешь в табличку:
| Business | Rating | Reviews | Pain signal | Owner contact |
|---|---|---|---|---|
| Smile Dental | 4.3 | 127 | "tried calling 3x" | front desk |
| Cuenca Vet | 4.5 | 89 | "voicemail full" | dr_garcia@ |
Цель: 20 строк. На это уходит 2 часа.
Hour 3-4: Cold outreach
Не звони в холодную. Email > звонок для первого контакта (звонок без контекста = ты сам тот спамер от которого ты пытаешься их защитить).
Шаблон email (на испанском для Латамерики или адаптируй):
Тема: Vi reseñas sobre llamadas perdidas — Smile Dental Hola Dr. Pérez, Vi en Google que pacientes mencionan llamadas no contestadas (reseñas de María L. y Carlos R., última semana). Construyo asistentes de voz con IA para clínicas como la suya. El asistente contesta 24/7, agenda citas en su calendario, responde preguntas comunes y transfiere casos complejos a su recepcionista. Costo: [precio] al mes, tarifa fija. Sin contratos largos. ¿15 minutos esta semana para mostrarle un demo en vivo (con su voz, su clínica)? — [Твоё имя] [Телефон]
Ключевые элементы:
- ✅ Конкретная боль (имена из отзывов)
- ✅ Конкретная цена (не "доступно", а число)
- ✅ Конкретный next step (15 минут демо)
- ❌ НИКАКОГО "AI revolution", "transform your business"
Отправляешь 5-10 emails. Свои цифры отклика узнаешь только на практике. Холодные письма регулируются законами (например, CAN-SPAM в США, CASL в Канаде, GDPR в ЕС): проверь правила своей страны.
Hour 5: Prospect calls (если кто-то ответил)
Если ответ не пришёл в Day 1 — не паникуй. Цель Day 1 — list + outreach sent, не "клиент подписан".
Если кто-то ответил — назначай demo на Day 5-6 (после того как у тебя будет работающий prototype).
DAY 2: Vapi account + first voice prototype
Цель дня: работающий voice agent (на тестовом номере) с базовой conversation flow.
Hour 1: Vapi setup
# Регистрация на vapi.ai
# При регистрации даются стартовые кредиты для тестов (на октябрь 2026 — $5, условия на сайте Vapi)
# Получаешь API key из dashboard
export VAPI_API_KEY=your_key_hereВ Vapi dashboard создаёшь первого Assistant. Vapi даёт temporary phone number для тестов — звонишь со своего личного телефона, тестируешь.
Hour 2-3: Conversation flow design
Перед тем как настраивать prompt — рисуешь flow на бумаге:
Звонок → "Здравствуйте, стоматология Smile Dental"
│
├── Хочет записаться → check_calendar → propose_slots → confirm
│
├── Спрашивает часы работы → answer from FAQ
│
├── Спрашивает про insurance → answer from FAQ
│
├── Срочный случай (боль) → transfer_to_human (если в часы работы)
│ → save_callback (если вне часов)
│
└── Чего-то другое → "Запишу для перезвона администратора"5-7 intents покрывают большую часть звонков в стоматологию.
Hour 4: Build agent on Vapi
Названия моделей и параметры в конфигурации Vapi (голос, распознавание, LLM) обновляются: выбирай актуальные значения в dashboard Vapi, список поддерживаемых моделей Claude смотри там же.
Базовая конфигурация Vapi assistant (JSON через API или dashboard):
{
"name": "Smile Dental Reception",
"voice": {
"provider": "11labs",
"voiceId": "EXAVITQu4vr4xnSDxMaL",
"model": "eleven_turbo_v2_5",
"stability": 0.5,
"similarityBoost": 0.8
},
"model": {
"provider": "anthropic",
"model": "claude-sonnet-5-5",
"temperature": 0.3,
"systemPrompt": "Ты ассистент стоматологии Smile Dental. Здоровайся коротко, спрашивай чем помочь. Часы работы: пн-пт 9-18, сб 10-14. Запись через инструмент book_appointment. Срочные случаи — переводи на человека через transfer_call."
},
"transcriber": {
"provider": "deepgram",
"model": "nova-2",
"language": "ru"
},
"firstMessage": "Здравствуйте, стоматология Smile Dental. Меня зовут Анна, чем могу помочь?",
"endCallPhrases": ["до свидания", "всего доброго"],
"maxDurationSeconds": 600
}Hour 5: Test with own phone
Звонишь на тестовый номер Vapi. Тестируешь сценарии:
- "Здравствуйте, хочу записаться на чистку"
- "Какие у вас часы работы?"
- "Принимаете ли вы страховку X?"
- (тишина 5 секунд) — как агент обрабатывает silence
- (перебиваешь агента посередине) — обработка interruptions
Записываешь что работает плохо: latency, неестественные паузы, повторения, галлюцинации.
DAY 3: Custom prompts + tool calling
Цель дня: агент с правильной личностью + booking integration.
Hour 1-2: System prompt с персоной
Slop default prompt = слабый агент. Кастомный prompt с brand DNA = реальный работник.
Клиника, врач, цены и страховки в примере вымышленные: в реальном проекте подставляй только данные, которые проверил клиент.
Ты — Анна, виртуальный администратор стоматологии "Smile Dental".
ЛИЧНОСТЬ:
- Тёплая, профессиональная, но не приторная
- Говоришь короткими фразами (15-25 слов максимум)
- Никогда не используешь сленг или coaching-фразы
- Если не знаешь — честно: "Уточню у врача и перезвоню"
КЛИНИКА:
- Smile Dental, Куэнка, Av. Florencia Astudillo 7-12
- Часы: пн-пт 9:00-18:00, сб 10:00-14:00, вс выходной
- Доктор: Dr. María Pérez, 15 лет опыта
- Услуги: общая стоматология, чистка, имплантация, отбеливание
- НЕ делаем: ортодонтию (бракеты), хирургию челюсти
- Страховки: принимаем Salud SA, Ecuasanitas
- Первая консультация: $30, чистка: $80, имплантат: $1200
ИНСТРУМЕНТЫ:
- book_appointment(date, time, service, patient_name, phone)
- check_availability(date, service)
- transfer_to_human(reason)
- save_callback(phone, reason, urgency)
ПРАВИЛА:
1. Срочная боль или травма → ВСЕГДА transfer_to_human (если рабочее время) или save_callback с urgency=high
2. НЕ давай медицинских советов (только запись)
3. НЕ обещай цену имплантации без консультации
4. Если клиент злится — спокойно: "Понимаю, передам доктору. Перезвонит через час"
5. Если speak slow или confused — переходи на простой испанскийДлина системного промпта: 300-500 слов — разумный ориентир; чем длиннее промпт, тем выше риск путаницы.
Hour 3-4: Booking tool — Calendly integration
В Vapi определяешь tool:
{
"type": "function",
"function": {
"name": "book_appointment",
"description": "Записать пациента на приём. Использовать когда клиент явно согласен на конкретное время.",
"parameters": {
"type": "object",
"properties": {
"patient_name": {"type": "string"},
"phone": {"type": "string"},
"service": {
"type": "string",
"enum": ["consultation", "cleaning", "implant", "whitening"]
},
"datetime_iso": {"type": "string", "description": "ISO 8601 datetime"}
},
"required": ["patient_name", "phone", "service", "datetime_iso"]
}
},
"server": {
"url": "https://your-backend.com/api/book"
}
}На своём backend (можно Vercel Edge Function):
// api/book.ts
export default async function handler(req: Request) {
const { patient_name, phone, service, datetime_iso } = await req.json();
// Calendly API call
const response = await fetch(
"https://api.calendly.com/scheduled_events",
{
method: "POST",
headers: {
Authorization: `Bearer ${process.env.CALENDLY_TOKEN}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
event_type: `https://api.calendly.com/event_types/${service}`,
start_time: datetime_iso,
invitee: { name: patient_name, phone }
})
}
);
if (!response.ok) {
return Response.json({
success: false,
message: "Время уже занято. Предложи другое."
});
}
return Response.json({
success: true,
confirmation: `Записано: ${patient_name}, ${datetime_iso}`
});
}Hour 5: FAQ knowledge
Самые частые вопросы заранее в system prompt (НЕ ждём что Claude угадает):
ЧАСТЫЕ ВОПРОСЫ:
- "Сколько стоит чистка?" → $80, занимает 45 минут
- "Принимаете ли страховку?" → Salud SA и Ecuasanitas, другие — звоните в их call-center
- "Можно ли в субботу?" → Да, 10:00-14:00, но только по записи
- "Сколько ждать имплантат?" → Сначала консультация ($30), затем доктор скажет план
- "Делаете брекеты?" → Нет, направим к ортодонту-партнёруDAY 4: Voice quality tuning
Цель дня: разговор звучит как с реальным человеком (или почти).
Hour 1: Choose voice
Vapi defaults (Cartesia/Deepgram TTS) — приемлемо, но "роботично" в long form.
ElevenLabs voices library (https://elevenlabs.io/voice-library):
- Поищи voices по фильтру: язык (ru/es/en), gender, age, accent
- Тест-listen каждой — выбираешь 3 кандидата
- A/B тестируешь на тестовых звонках с друзьями
Рекомендация для русскоязычных бизнесов: female voice, 30-40 лет, "теплая", без акцента. Подходящий голос выбери в каталоге ElevenLabs.
Рекомендация для Латамерики (испанский): Latin American Spanish, female, neutral accent (не Mexican, не Argentinian — нейтральный).
Hour 2-3: Personality tuning
Через iterations: звонишь, слушаешь, корректируешь prompt.
Типичные проблемы:
| Проблема | Решение в prompt |
|---|---|
| Слишком формально | "Используй обращение на 'ты' если клиент молодой" |
| Слишком длинные ответы | "Максимум 25 слов на реплику" |
| Повторяет имя клиента | "Имя — только при подтверждении записи, не чаще" |
| "Извините за беспокойство" | "Никогда не извиняйся без причины" |
| Заикается / hum | Понизь temperature до 0.2-0.3 |
Hour 4: Latency optimization
Цель: < 1 секунды от конца реплики клиента до начала ответа агента.
Что влияет:
- STT latency — зависит от провайдера и модели распознавания
- LLM latency — Haiku быстрее Sonnet, а старшие модели ещё медленнее
- TTS latency — зависит от модели голоса (turbo и flash-варианты быстрее)
Замеряй задержку в своих тестовых звонках.
Hack для скорости: для коротких ответов (FAQ, подтверждения) переключай на Haiku. Для booking и сложных интентов — Sonnet.
В Vapi это делается через model.fallbackModels:
{
"model": {
"provider": "anthropic",
"model": "claude-sonnet-5-5",
"fallbackModels": ["claude-haiku-4-5"]
}
}Hour 5: Edge cases — interruptions, silence, accents
Interruptions (клиент перебивает агента):
{
"responseDelaySeconds": 0.4,
"llmRequestDelaySeconds": 0.1,
"numWordsToInterruptAssistant": 2
}Silence (клиент молчит):
{
"silenceTimeoutSeconds": 7,
"voicemailDetectionEnabled": true
}Accents — если бизнес в Латамерике с клиентами из Венесуэлы / Аргентины / Колумбии — тестируй Deepgram language code es (нейтральный) против es-419 (Latam).
DAY 5: Integration + edge cases
Цель дня: реальный телефонный номер + интеграции + полный production checklist.
Hour 1: Phone number setup
# Регистрируешься на twilio.com
# Buy a number в США/Эквадоре/где нужно
# Цена: плата за номер в месяц + плата за минуты (смотри тарифы Twilio)
# В Vapi dashboard → Phone Numbers → Add Twilio Number
# Вводишь:
# - Twilio Account SID
# - Twilio Auth Token
# - Phone Number (E.164 format: +593...)
# Линкуешь номер с AssistantЗвонишь со своего телефона на купленный номер — должен отвечать твой агент.
Hour 2-3: Real systems integration
Клиент использует свой Google Calendar / Google Sheets / CRM. Подключаешься через webhook на бэкенде:
// Webhook на каждый завершённый звонок
app.post('/vapi-webhook', async (req, res) => {
const { type, call, transcript, summary } = req.body;
if (type === 'end-of-call-report') {
// Записываем в Google Sheets (клиент видит лог)
await sheets.append({
spreadsheetId: CLIENT_SHEET_ID,
range: 'Calls!A:F',
values: [[
call.startedAt,
call.endedAt,
call.customer?.number,
summary,
call.cost,
transcript.length
]]
});
// Если booking — отправляем подтверждение через email клиенту бизнеса
if (call.toolCalls?.some(t => t.name === 'book_appointment')) {
await sendNotification(`Новая запись: ${summary}`);
}
}
res.json({ ok: true });
});Hour 4: Edge cases playbook
Готовь reactions на 5 неудобных сценариев:
Злой клиент: "Где мой заказ?! Третий день звоню!" → Agent: "Понимаю, передам менеджеру сейчас же. Записываю номер для срочного перезвона"
Языковой switch: клиент начинает на испанском, переходит на английский → System prompt: "Если клиент переключает язык — следуй за ним"
Не понимает агента (плохая связь): говорит "что? повторите" → Agent: "Извините, плохо слышу. Если хотите — могу перезвонить позже"
Спам/робот на линии: → Detection: если 3 раза подряд silence > 5sec → end call
Клиент просит человека: "соедини с живым" → Tool call:
transfer_to_human(reason="customer_requested")
Hour 5: Production deployment checklist
DAY 6: Customer onboarding
Цель дня: клиент подписан, агент live на его номере, первые реальные звонки.
Hour 1-2: Onboarding call
1 час видеозвонка с клиентом. Покажи:
- Live demo — звонишь при нём, показываешь как работает
- Dashboard — Google Sheet с историей всех звонков (он видит)
- Customization options — что можно/нельзя менять
- Pricing — согласованная сумма в месяц (в примере $500), первая неделя бесплатно (trial)
- Contract — простой 1-page document (email + reply "согласен")
Hour 3: Knowledge ingestion
Собираешь от клиента:
- Часы работы (точно, включая holidays)
- Услуги + цены (если можно говорить или "уточним при визите")
- FAQ — что они реально слышат каждый день
- Список услуг которые НЕ делают (предотвращает неправильные expectations)
- Имя и контакт live person для transfer
- Brand voice preferences — формальное / неформальное
Записываешь это всё в system prompt (Day 3 формат). 30-45 минут работы.
Hour 4: Tracking dashboard
Клиенту нужно видеть что агент работает. Простейший вариант — shared Google Sheet:
| Время | Длительность | Phone | Outcome | Транскрипт |
|---|---|---|---|---|
| 14:23 | 2:14 | +593... | booking_confirmed | [link] |
| 15:47 | 0:45 | +593... | hours_question | [link] |
| 16:12 | 4:33 | +593... | transferred_to_human | [link] |
Продвинутый вариант (week 2+): простой Next.js dashboard на Vercel. Но для Day 6 — Google Sheet хватит.
Hour 5: Go live
- Меняешь Twilio routing с current setup на твой агент (или клиент перенаправляет звонки)
- Первые 24 часа сидишь рядом со своим телефоном
- Если что-то сломалось — fallback на client's old number (имей готовый rollback)
Договариваешься о 6-часовом check-in — обзвонишься с клиентом, узнаешь как первые звонки.
DAY 7: Refinement + scale
Цель дня: агент стабилизирован, первый invoice выписан, план Week 2 готов.
Hour 1-2: Review первых 20 звонков
Открываешь все транскрипты. Ищешь паттерны:
- Где Claude галлюцинировал? ("Сказал что делаем брекеты, а мы не делаем")
- Где звонок не закрылся? (клиент бросил трубку посередине)
- Где транзит на человека неудачный? (передал не туда / не предупредил)
- Где booking не получился? (Calendly returned error, agent не handled gracefully)
Каждая проблема = patch к system prompt или tool.
Hour 3: Tune prompts based on real conversations
Самые ценные данные = реальные транскрипты. Используешь их для:
- Добавление в FAQ того что клиенты реально спрашивают
- Удаление из prompt того что никто не спрашивает (экономишь токены)
- Уточнение personality на основе live reactions
Hour 4: Invoice + retainer
Выписываешь первый invoice на согласованную сумму. Платёжный метод:
- США / Канада: Stripe (легко) или Wise
- Латамерика: PayPal или local банк
- Другие страны: выбирай способ оплаты по законам и доступным сервисам в твоей стране и стране клиента, с учётом валютных и санкционных ограничений
Договариваешься о monthly recurring — автоматическое списание 1 числа каждого месяца.
Hour 5: Plan Week 2
У тебя есть:
- 1 working voice agent
- 1 paying client
- ~20 транскриптов с insights
- Reusable Vapi template
План Week 2:
- Пн: Outreach в 10 новых SMB (используешь template Day 1)
- Вт: Refine pitch на основе learnings (теперь у тебя case study с цифрами)
- Ср-Чт: Demo calls с prospects
- Пт: Close 1-2 новых клиентов
Темп роста определяют твои часы на поддержку и спрос на рынке: фиксированных ориентиров по числу клиентов здесь нет.
Real economics
Setup cost (one-time per client, оценка автора по времени)
| Item | Time | Cost |
|---|---|---|
| Outreach + sales | 5h | $0 |
| Vapi configuration | 8h | $0 |
| Custom prompt + tools | 6h | $0 |
| Integration (Calendly, Sheets) | 5h | $0 |
| Voice tuning | 3h | $0 |
| Onboarding | 3h | $0 |
| Total per client | 30h | $0 cash |
Variable cost per client per month
Avg calls/month: N (оцени вместе с клиентом) Avg duration: M минут Total minutes: N × M Cost per minute: по твоим тарифам (см. раздел «Stack и экономика») Variable cost: Total minutes × Cost per minute + Twilio number: по тарифу + ElevenLabs sub: по тарифу (может делиться между клиентами) --- Per-client cost: сумма строк
Revenue per client
Маржа = цена, о которой договорились с клиентом, минус variable cost и доля твоих постоянных расходов. Считай на своих тарифах и данных клиента: универсальных значений нет.
Масштаб
С ростом числа клиентов растёт время на мониторинг, правки промптов и поддержку. Предел для одного человека определяется этим временем. Когда оно заканчивается, подключаешь помощника для onboarding и monitoring или пересматриваешь цену.
Common pitfalls
| Day | Pitfall | Защита |
|---|---|---|
| Day 1 | Target wrong niche (pizza < dentist) | Фильтр по LTV выше цены сервиса |
| Day 1 | "AI revolution" в pitch | Конкретная боль + цифры |
| Day 2 | Слишком сложный first prototype | Start simple — 1 intent, потом расширяй |
| Day 3 | System prompt > 800 слов → confusion | Держи в 300-500 слов, переноси FAQ в tools |
| Day 3 | Hardcode цены которые меняются | "Уточняется при записи" для меняющихся |
| Day 4 | Default Vapi voice = "робот" → клиент думает спам | ElevenLabs premium voice mandatory |
| Day 4 | Latency >2 секунд | Haiku для FAQ, Sonnet только для complex |
| Day 5 | Deploy без stress testing | 10 test calls с разными сценариями обязательны |
| Day 6 | Клиент не понимает что покупает | Live demo > слайды |
| Day 6 | Нет rollback plan | Backup на client's old number готов |
| Day 7 | No transcripts review | Weekly review = mandatory, иначе quality drift |
| Day 7 | Цена слишком низкая | Считай по себестоимости: цена ниже неё — работа в убыток |
What you have end Day 7
✅ Live voice agent отвечающий реальные звонки 24/7 ✅ Первый SMB-клиент подключён (условия оплаты согласованы) ✅ Dashboard (Google Sheet) с транскриптами всех calls ✅ Reusable template — следующий клиент быстрее ✅ Outreach playbook с твоими реальными response rates ✅ Real economics: расчёт на реальных цифрах первого клиента
И главное: у тебя есть шаблон case study с цифрами для следующих prospects: "[Клиника] — за первый месяц агент принял [N] звонков, которые раньше пропускались, [M] из них стали записями." Подставляй только реальные данные клиента и только с его разрешения.
Инструменты и ресурсы
- Vapi — платформа voice agents (стартовые кредиты для тестов, условия на сайте)
- Twilio Phone Numbers — покупка и настройка реальных номеров
- Calendly API — booking integration
- ElevenLabs Voice Library — каталог premium голосов
- Deepgram — один из популярных STT для real-time conversations
- Claude Console — Claude API keys и monitoring
- Vercel Edge Functions — host для webhooks (для коммерческого проекта нужен платный тариф Vercel; можно использовать и Cloudflare Workers)
- Cal.com — open-source альтернатива Calendly если клиент хочет self-host
Ключевые выводы
Не строй универсальный voice agent. Строй специализированного работника для одной ниши и одного бизнеса. Стоматолог не покупает "AI". Он покупает "не теряем звонки". Продавай результат, не технологию.
Экономика работает, только если один клиент приносит бизнесу заметно больше, чем стоит твой сервис (LTV выше цены агента). Стоматология обычно подходит, пиццерия обычно нет. Фильтруй prospects по этому критерию ещё на Day 1, иначе придёшь к Day 7 с контрактом, который не окупается.
Setup time падает с каждым следующим клиентом: template, reused prompts и наработанные FAQ дают compound effect. Сколько времени займёт каждый следующий клиент, увидишь на своих проектах.
Связанные уроки
- Первые клиенты — выбор первых клиентов и target персон
- Голосовые AI-агенты — Vapi, Retell, Bland.ai — Vapi setup в деталях (advanced configuration)
- Real-time AI — real-time AI и latency optimization паттерны
- Call Support AI — Vapi + Bland.ai — голосовые агенты в поддержке: схемы работы и оплаты
- Build-Along — AI Consulting Practice — следующий Build-Along
Следующий урок
Отметка хранится только в этом браузере и никуда не отправляется. Мой прогресс