Scrape Google Maps for leads with an agent
How an agent builds a local lead list from Google Maps: search, details, website, email. The steps, a prompt to paste and what to check first.
Walid Boulanouar · · 5 min read
On this page
Local businesses are easy to describe and hard to list. You know you want every dentist in Lyon or every roofer near Austin. Google Maps knows who they are. Turning that into a clean list with a phone number, a website and an email is where the hours go.
An agent can do the work in four steps. This post walks through them, says what the agent needs to start, and gives a prompt you can paste.
The four steps
- Search. Query Google Maps for one business type in one place. The result is a list of places with names and addresses.
- Details. For each place, fetch the phone number, website, rating and review count.
- Website. Open the website, or use the domain, to confirm the business is real and to find a contact page.
- Email. Look up a work email for the owner or manager, then check that it is deliverable.
Each step is a separate call, and each can use a different provider. That is where a catalog helps. The agent searches for the job in plain words, such as search Google Maps, and picks an endpoint that fits.
The local leads from Google Maps recipe covers the first two steps and lists the providers it can use for each. For the email step, see the MCP pages for email finders.
What the agent needs
- A narrow query: one business type, one city. Broad queries return noise.
- A place to keep rows. A spreadsheet works. A database you own works better, because you can run the job again without duplicates.
- A budget. Each call costs something, so set a limit and a rule to show the price first.
- A rule for what counts as a lead, such as has a website and a rating above a threshold you choose.
That third item matters more than it seems. Running a list of a few hundred places through four steps adds up. Ask the agent to run ten places first and report the cost per row.
Prompt for your agent
Prompt for a Google Maps lead list
Why a small run first
Ten rows tell you three things. Whether the search returns the right kind of business. Whether the website step finds real sites. And what a finished row costs. If any answer is bad, you have spent very little and can change the prompt.
Look at the rows yourself. Open five websites. Read five emails. Agents are confident, and a wrong match looks the same as a right one in a table.
Keeping the list useful
A list goes stale. Businesses close, move or change numbers. Store the fetch date on each row so you know how old it is. Use the place's name and address as a natural key, so a second run updates a row instead of adding a copy.
If you want the list to live in a proper table with notes and a dashboard, read build your own CRM with an agent and Supabase. The same prompt pattern applies.
For background on how the agent reaches these providers through one connection, see what is an MCP server.
Questions
Keep reading
Build your own CRM with an agent and Supabase
Let an AI agent build a small CRM in your own Supabase project. The five tables, the loop, seven rules, the exact prompt and one step not available yet.
Walid Boulanouar · · 5 min read
What is an MCP server? A plain explanation
An MCP server gives an AI agent tools it can call. What a tool call looks like, and how one connection can reach many providers.
Walid Boulanouar · · 5 min read
Can an AI agent replace Clay? What we checked and what it cannot do
We checked each job Clay does against the looot catalog. An agent covers the enrichment work. It does not give you a shared table or a native CRM sync.
Walid Boulanouar · · 4 min read
Try it with the agent you already use
Start your workspace, top up, and paste one prompt into your agent.