A practical, screenshot-by-screenshot workflow for service businesses that want to show up in ChatGPT, Perplexity, and other AI assistants, using the call data you already have.
Why your phone calls are an AI search goldmine
AI search is changing how customers find service businesses. Instead of scanning 10 blue links, people ask ChatGPT or Perplexity a direct question — "Who's the best painter near me that handles lead-safe prep?" — and get a direct answer. The businesses that get named in those answers are the ones whose websites actually answer the questions real customers ask.
Most businesses guess at what those questions are. They don't have to. If you run CallRail’s Call Tracking, you already have a daily record of exactly how customers phrase their questions, what worries them, and what they ask before they buy.
The short version: the calls already contain the content. Most painters are sitting on a year of perfect topic research and deleting it every night.
This article walks through the exact loop we run for clients: from setting up call tracking, to turning transcripts into published, AEO-optimized web content, to tracking the AI-driven leads that come back. I'll use one of our painting clients, NHV Painters (nhvpainters.com), as the running example.
Step 1: Set up a number pool with source tracking
Start with the foundation. Set up a number pool in CallRail and enable source tracking on the phone numbers, so you can see where every call actually comes from. Without source tracking you get call volume but no attribution, and attribution is what eventually lets you prove AI search is driving leads.
Step 2: Turn on call recording and transcription
Next, enable the AI features in CallRail. This is what captures the transcripts. It won't look like a marketing feature yet, but the transcripts are the goldmine that powers everything downstream.
Step 3: Let the transcripts accumulate
Once it's on, transcripts start coming in. Every single one is a content idea: real questions phrased the way customers actually talk.
And it compounds. The longer it runs, the bigger the dataset you'll have to search and analyze later.
Step 4: Connect the call data to an MCP
To work with this data at scale, connect it to your AI assistant through MCP (Model Context Protocol) — the standard that lets an assistant like Claude read live data sources directly.
I use Insightful's CallRail MCP so Claude can read the call data directly. If a tool doesn't have a native MCP server, this is how you bridge it. The MCP wraps the CallRail API and exposes the calls and transcripts to the AI.
Once connected, the transcripts live inside your LLM conversations. No copy-paste. The data is just there, queryable by date range, company, or keyword.
Step 5: Analyze the calls
Now prompt the assistant clearly to analyze the calls through the MCP. I built a small skill so it's basically one command instead of re-typing instructions each time.
Claude analyzes the calls and returns the stats: the recurring themes, how often each one comes up, and the sentiment behind them.
Out of that come the content ideas, ranked by what customers actually bring up most. This ranking matters: you're prioritizing content by real demand, not guesswork.
Step 6: Turn recommendations into web content
Now turn those recommendations into actual web content.
Prompt the assistant to push a blog draft to your CMS. We use Duda, but this works with most CMS platforms that expose an MCP. My prompt is roughly:
"Take the top recurring question from this week's transcripts that we don't already cover, draft a blog post answering it in [client]'s brand voice using the customer's own phrasing, enable AEO schema, give it a keyword-rich URL, and push it to Duda as a draft."
Note the key instruction: that we don't already cover. The phrase that keeps this useful is avoiding duplication. You only want net-new content that fills a real gap, not a second page competing with one you already have.
The draft lands in your CMS either staged as a draft or published, depending on how you set it up.
Step 7: Review the AEO-optimized draft
You've now got a new article built from real customer language.
It's optimized for AEO with schema enabled. Edit the draft however you like before it goes live.
LINK
One detail worth enforcing every time: always use keyword-rich URLs. That compounds into more AEO visibility over time.
Step 8: Check attribution as leads come in
As leads start coming in, check attribution. Look at CallRail (or your tool) for AEO-driven leads, then report it back to the client and reiterate the loop so they see the cause and effect.
A note on reading this data honestly: the early numbers will be small, and they undercount AI's real influence. Customers often start in an LLM, get a recommendation, then leave to validate the business. They Google the company name or go to the site directly, and that conversion gets attributed to branded or direct search even though the LLM started it. We already see this in calls and forms where people mention they found the business through ChatGPT. CallRail makes those mentions searchable, so listen for them alongside the hard attribution numbers.
Step 9: Monitor, report, and refine: A virtuous loop
Monitor your AI visibility prompt by prompt over time, and watch attribution closely. Let the data refine the strategy.
Then share it with the client and keep improving. The whole thing is a loop, not a one-time setup: calls come in, transcripts surface gaps, content gets published, visibility grows, leads get attributed, and the results tell you what to publish next.
THE bottom line
The calls already contain the content. CallRail captures it, the API and MCP make it programmatically accessible, and a disciplined weekly loop turns it into the FAQs, service pages, and articles that LLMs reward. Then CallRail's attribution proves the channel is working.
The businesses building this coverage now will own the answers when AI search volume matures.
