Cheapest way to build ai receptionist that i own outright no subscriptions

The cheapest way to build an AI receptionist with no subscriptions is self-hosting an open-source stack combining Asterisk or FreeSWITCH for telephony, OpenAI's Whisper for speech transcription, a local LLM like Llama for conversation logic, and a text-to-speech engine. This approach requires technical skills but eliminates recurring fees entirely.
The cheapest path to an AI receptionist you own outright is to self-host an open-source voice stack (Asterisk or FreeSWITCH for telephony, Whisper for transcription, an open LLM like Llama or Mistral for conversation, and a text-to-speech engine like Coqui or Piper) on a $20–40/month VPS, then connect it to a SIP trunk provider charging roughly $0.01–0.02 per minute with no base fee. You'll invest 40–80 hours of engineering time upfront, but after that the only recurring costs are server rent and per-minute voice carrier fees.
Key takeaways
- Open-source voice components (Asterisk, Whisper, Llama, Piper) eliminate licensing fees; you pay only for compute and SIP trunking.
- A mid-tier VPS ($20–40/month) can handle dozens of concurrent calls if you quantize models and tune carefully.
- Metered AI receptionist SaaS platforms often charge $0.05–0.15 per minute or $99–299/month per line, which compounds quickly at scale.
- Owning the stack means no data leaves your infrastructure, no vendor lock-in, and predictable costs after the build.
Why ownership matters (and what it costs)
According to a 2023 survey by Metrigy, contact-center leaders cite unpredictable per-seat and per-minute pricing as the top barrier to AI adoption, with 68% of respondents reporting budget overruns when call volumes spike. When you own the receptionist outright, you convert an opex treadmill into a one-time capex investment plus fixed infrastructure rent.
The all-in cost to build and deploy breaks down roughly as follows:
- Compute: A Hetzner CX41 (8 vCPU, 16 GB RAM, €15.30/month ≈ $17) or DigitalOcean Droplet ($24/month) will run quantized Whisper (medium or small) and a 7B-parameter LLM with acceptable latency for a single concurrent call. For 5–10 simultaneous calls, budget $40–60/month for a beefier instance or a second node.
- SIP trunking: Twilio charges $0.0130/minute inbound in the US with no monthly minimum; Telnyx and Bandwidth offer similar rates. A business fielding 2,000 minutes/month pays roughly $26 in carrier fees.
- Storage: Call recordings and logs add pennies per gigabyte; 100 GB of block storage on most cloud providers costs $5–10/month.
- Engineering time: Expect 40–80 hours to wire Asterisk or FreeSWITCH, integrate Whisper (OpenAI's open transcription model), prompt-tune an open LLM, configure a TTS engine, write the conversation-flow logic, and harden security (firewall rules, TLS, rate limits). If you value internal engineering time at $75/hour, that's $3,000–6,000 of labor, amortized over the life of the system.
After launch, the only recurring line items are server rent and per-minute trunking. There are no seat licenses, no per-call API meters (because inference runs on your own metal), and no surprise invoices when call volume doubles.
Step-by-step: the open-source voice stack
1. Provision a VPS and install the telephony engine
Spin up an Ubuntu 22.04 instance with at least 4 vCPU and 8 GB RAM. Install Asterisk (mature, widely documented) or FreeSWITCH (more modern API, easier scripting). Both are free and open-source. Asterisk's dialplan syntax is quirky but battle-tested; FreeSWITCH's XML and JavaScript hooks are cleaner for custom logic.
2. Connect a SIP trunk
Sign up with Twilio, Telnyx, or Bandwidth. Provision a phone number ($1–2/month) and configure your PBX to accept inbound SIP calls. Most providers publish Asterisk/FreeSWITCH config snippets. Test with a simple IVR ("Press 1 for sales") to confirm audio flows both ways.
3. Add real-time transcription (Whisper)
Clone OpenAI's Whisper repository and run the medium.en or small.en model on your VPS. Whisper is Apache-2.0 licensed and runs entirely offline. Pipe the caller's audio stream into Whisper via a named pipe or WebSocket; you'll get near-real-time transcription with ~200–500 ms latency on modern hardware. For lower latency, consider Vosk or Coqui STT, though Whisper's accuracy is typically higher.
4. Wire in an open large language model
Download a quantized Llama 2 7B or Mistral 7B model (both permissively licensed for commercial use) and serve it with llama.cpp or vLLM. Write a system prompt that defines the receptionist's role ("You are the front-desk agent for Acme Plumbing. Greet callers, ask how you can help, and transfer to the on-call plumber if it's an emergency."). Send each transcribed utterance to the LLM, receive the reply, and pass it to TTS.
5. Synthesize speech
Piper (MIT license) and Coqui TTS (MPL 2.0) are fast, open-source TTS engines. Piper's VITS models produce natural-sounding speech in under 100 ms on CPU. Stream the generated audio back into the Asterisk/FreeSWITCH call leg. The caller hears the AI's response within 1–2 seconds of finishing their sentence.
6. Implement conversation state and transfer logic
Store conversation context in Redis or a simple JSON file. When the LLM detects intent to transfer (regex on phrases like "speak to a person" or a classifier), trigger an Asterisk Dial() command to bridge the call to a human extension or cell phone. Log every turn for quality review and fine-tuning.
7. Harden security
- Firewall the SIP port (5060/5061) to your trunk provider's IP ranges.
- Enable TLS (SIPS) and SRTP for encrypted signaling and media.
- Rate-limit registration attempts to block SIP scanners.
- Run the LLM and Whisper processes under a non-root user with minimal privileges.
Trade-offs and gotchas
Latency: Even with optimizations, expect 1.5–3 seconds from the caller's last word to the start of the AI's reply (transcription + inference + TTS + network). Metered commercial APIs (for instance, Deepgram + GPT-4 + ElevenLabs) can hit sub-second round-trips because they run on GPU clusters, but you pay $0.05–0.15 per minute for that speed.
Uptime and monitoring: You own the ops. Set up Prometheus + Grafana or a simple cron health-check that dials your receptionist every 15 minutes. If the VPS goes down, calls fail until you restart it (or you architect active-active redundancy, which doubles cost).
Voice quality: Open TTS has improved dramatically, but ElevenLabs and Azure Neural TTS still edge ahead in naturalness. If your brand demands studio-grade voices, budget for a commercial TTS API ($0.15–0.30 per 1,000 characters) or record a custom voice dataset and fine-tune Coqui.
Maintenance: Model updates, security patches, and feature requests fall on your team. SaaS platforms handle this automatically (at the cost of lock-in and metered pricing).
Alternatives: when SaaS or hybrid makes sense
| Tool | Best for | Rough price |
|---|---|---|
| Bland AI | Pay-per-minute simplicity, fast setup | ~$0.09–0.12/min, no base fee |
| Vapi.ai | Developer-friendly API, bring-your-own LLM | ~$0.05–0.08/min + infra |
| Air.ai | Fully managed, long conversations | $200–500/mo + per-minute |
| GoHighLevel | All-in-one CRM + phone + AI for agencies | $97–297/mo, includes CRM |
| Twilio Autopilot + Studio | Enterprises already on Twilio, hybrid control | Pay-as-you-go, ~$0.01–0.05/min + API |
| Hire in-house | Full customization, dedicated team | $120k–180k/year loaded cost per engineer |
| Self-hosted (this guide) | Maximum ownership, no per-minute meter | $20–60/mo + upfront engineering |
Bland and Vapi win on speed-to-market; you can have a working receptionist in an afternoon. GoHighLevel bundles phone, CRM, and marketing automation, so if you already pay for the platform the marginal cost of AI voice is low. Hiring in-house gives you a dedicated team but costs six figures per engineer. Self-hosting wins when call volume is high, data must stay on-premises, or you want zero SaaS lock-in.
When to self-host versus when to rent
Self-hosting pays off fastest when:
- You field more than 10,000 minutes per month (at $0.10/min SaaS, that's $1,000/mo; self-hosted is $40 server + $130 trunking = $170).
- Your data is sensitive (healthcare, legal, finance) and you cannot paste call transcripts into a third-party API.
- You want to fine-tune models on your own conversation logs without sharing data.
- You plan to run the receptionist for years and can amortize the engineering investment.
Rent SaaS when:
- You need to validate the use case in weeks, not months.
- Call volume is unpredictable or seasonal (SaaS scales instantly; self-hosted requires you to provision ahead).
- You lack in-house ML or telephony expertise and prefer to pay for managed uptime.
Disclosure: We build MasterAI
Disclosure: We build MasterAI, a done-for-you, self-hosted AI and automation studio. We design, build, and run it on the client's own infrastructure so their data never leaves and never trains OpenAI, they own the code, and there is no per-seat or per-minute meter. If you'd rather hand the engineering and ops to a team that specializes in private, owned AI voice systems, book a call and we'll walk through your requirements.
Frequently asked questions
Can I really run Whisper and an LLM on a $20/month server?
Yes, if you quantize the models and limit concurrency. Whisper small.en and a 4-bit quantized Llama 2 7B will fit in 8 GB of RAM and deliver acceptable latency for one or two simultaneous calls. For higher concurrency, step up to a $40–60/month instance or split transcription and inference across two nodes.
What if I don't know Asterisk or FreeSWITCH?
Both have active communities and hundreds of tutorials. Budget an extra 10–20 hours to climb the learning curve, or hire a freelance VoIP engineer on Upwork ($30–80/hour) to handle the telephony plumbing while you focus on the AI logic. Alternatively, use a managed SIP service like Twilio Elastic SIP Trunking, which abstracts some complexity.
How do I handle multiple languages?
Whisper supports 57 languages out of the box. Load the multilingual medium or large model (slightly higher memory footprint) and it will auto-detect the caller's language. For the LLM reply, either use a multilingual model (Llama 2, Mistral, or BLOOM) or route to language-specific prompts. TTS is trickier; Piper and Coqui have fewer non-English voices, so you may need to mix in a commercial API (Google TTS, Azure) for languages your open-source stack doesn't cover well.
What about compliance and call recording?
Most jurisdictions require one-party or all-party consent for recording. Asterisk and FreeSWITCH can record calls to disk automatically; store the files encrypted at rest and implement retention policies (for example, auto-delete after 90 days unless flagged for review). Consult a lawyer for GDPR, HIPAA, or PCI-DSS requirements. Because you own the infrastructure, you control exactly where recordings live and who can access them, which simplifies compliance compared to a multi-tenant SaaS.
Can I upgrade components later without starting over?
Absolutely. Swap Whisper for Deepgram's API if you need lower latency, or replace the open LLM with a fine-tuned GPT-4 call when conversation quality matters more than cost. The modular architecture (SIP ↔ transcription ↔ LLM ↔ TTS) means you can optimize each piece independently. That's the advantage of owning the stack: no vendor decides your upgrade path.
Our AI Tools
See all our apps →📚 Free: Get Found by AI — the 2026 GEO Playbook
Get the free ebook on how to get your brand cited by ChatGPT, Claude, Gemini & Perplexity — plus new posts as we publish them.
No spam. Unsubscribe anytime in one click.
