Inspiration
This project began at home. One of our leads grew up in a house where his parents ran their own auto shop: independent mechanics with no receptionist, no front desk, nobody who could catch the phone when both hands were buried in an engine. Calls that were never answered translated to missed bookings, which immediately translated to money that was never seen. This was never an abstraction to us; this was how we made our rent. And so CaptureCall was born, and rolled out into exactly that shop. Their profits increased 50% in one month-all those lost calls were now booked appointments. We realized not only was this a good idea, but it was also a problem hiding in plain sight at businesses everywhere, and we could solve it. The problem is nearly universal: the average small business misses 62% of calls, which also translate to lost revenue. While call centers solve this problem for large enterprises at a significant cost and complexity, they are inaccessible for small businesses. We built CaptureCall to bridge this gap, granting these companies enterprise-grade call coverage with no need to hire staff or learn clunky software.
What it does
CaptureCall routes a business’s existing phone number to an AI receptionist that answers every call, handles common customer requests, and automatically books appointments. Businesses can get up and running within a day for a flat monthly rate. Beyond the product, we built the entire lead-gen to sales customer acquisition stack ourselves: from data sourcing and cleaning to a custom cold-emailing system and a performance tracking dashboard.
How we built it
Voice AI: Our initial voice call system used Twilio, the Claude API and Flask. Because the latency made conversation feel unnatural, we moved to Retell AI where the latency is significantly improved and allows for a much more scalable product. Lead sourcing: We used LeadSwift, Apollo, and Apify to scrape business listings at scale, then wrote a Python script to: remove entries that were already on the business’s main listing page; deduplicate based on phone number; remove entries without an email address; remove large chains; filter entries based on priority (e.g. "auto shop" over "car rental agency"); and finally, pick the single best email available. We also corrected issues with false positive keyword matches, like “Affordable Autoworks,” which was sometimes caught due to the word "ford" appearing within it. Cold email: We constructed a custom outbound system from scratch, adding SPF, DKIM, and DMARC to authenticate and protect our domain's deliverability and then cautiously scaling our sending volume starting at ~50 emails a day and slowly increasing the volume over weeks. Performance tracking: We also designed and hosted our own tracking system using Flask and PostGres on Render. To keep our free-tier services from shutting down and our data from becoming stale, we added a scheduled health-check to ping our site every 5 minutes.
Challenges we ran into
Our initial voice stack technically worked but was unnatural sounding, so we had to quickly identify and switch platforms instead of trying to workaround its limitations. An outbound calling API returned consistent, unexplained errors. We had to work around the issue blind. Raw leads had duplicated entries, missing email fields, and false matches. Custom filters were required, so we wrote them ourselves. Sending emails to inboxes, rather than spam folders, was surprisingly difficult and required domain authentication plus very careful volume ramp-ups. Our custom tracking solution on the free tier of a hosting platform would become unavailable due to automatic idle shut-downs until we engineered a reliable health-check.
Accomplishments that we're proud of
Creating our own custom cold email script, as well as creating our own demo ai to show to businesses.
What we learned
The critical feature of a conversational AI is its latency, not its accuracy. Data cleaning and structure required a much greater engineering effort than building the voice AI itself. A poorly executing outbound sends program can impact domain reputation for weeks: deliverability takes constant attention. Lightweight, self-hosted infrastructure was much cheaper and more reliable than paying for and trusting external services.
What's next for Capture Call AI
Expanding to International Markets.
Built With
- api
- flask
- github
- html
- javascript
- python
- render
Log in or sign up for Devpost to join the conversation.