If you sell to local businesses, roofers, plumbers, HVAC, landscapers, dentists, auto dealerships, med spas, whatever, you already know Google Maps is where the list lives.
What you probably don't know is how much of it you're not getting.
A normal Maps wrapper pages through results until Google stops answering. In Houston, searching roofers, that runs dry at 134 businesses. We ran a grid over the same metro one afternoon and pulled 977. It wasn't even exhaustive. Two pages per point, no densification.
That's the first thing. It isn't the thing worth your attention today.
We just finished the work that lets you run all of it from your own application. Your CRM, your n8n workflow, your Python script, your Claude project. You get an API key, you point your LLM at the developer docs and the feature list, and it builds you a pipeline. You can go months without loading our site.
What your code can do
Search
One call, a keyword and a city, live against Google Maps. You get back the businesses and their row IDs immediately, so you can act on them in the same script. One token per new business. Anything you already own is free, every time, forever.
Enrich
Every new business arrives enriched at no extra cost. That means 760 web technologies across 31 categories, 400 live chat widgets, 185 booking systems, 65 CRMs including the vertical ones like ServiceTitan and Jobber, ad pixels, DMARC, SSL, whether they have a contact form, whether they have online booking, domain age, and a relevance check that reads their actual website and tells you whether this roofer is a roofer, with the sentence from the page that proves it.
Find the humans
One call finds the named people and SMTP-verifies their mailboxes in the same token. About 47% of attempts come back with a name. About 14.5% come back with a name and a mailbox that answered. On roofing it's closer to 18%. Those are our real numbers across the US database, not a brochure figure.
Read them back
Until this week you could pay to discover a contact and then had to open a browser to see it, which was stupid, and it's fixed. GET /api/v1/people gives you every contact with their title, their company, and their verification verdict. Filter it 16 ways.
Query everything
45 filters. Every roofer in Texas with more than 100 reviews, no Facebook pixel, no online booking, and a verified contact. That's one request.
Signals
We re-enrich the leads you own, on a schedule you set, from weekly to quarterly, and we tell your application what changed. A landscaper installs a booking widget. An HVAC company adds a Facebook pixel and starts running ads. A dentist swaps their chat widget. A plumber's review count jumps 40 in a month. Your system hears about it the same week.
Two rules on that, because they matter. A change event only fires between two successful enriched runs, so a failed scrape never reads as "they removed it". And a disappearance needs two consecutive misses before we call it gone. We'd rather tell you nothing than tell you something wrong.
How to set this up, depending on how you sell
If you work the phones
Stop paying for contact discovery. Between 97% and 99% of the US businesses we hold have a phone number, across every trade we've checked. Roofers 98%. HVAC 98.9%. Plumbers 97.7%. Electricians 99.4%. Landscapers 97.2%. Phone comes off the Google Business Profile, so it barely moves by industry.
Spend your whole allowance on volume and signals instead. Pull the market, filter on relevance and on the signal that means "something just changed", and hand your dialer a list where every row has a reason to be called today.
If you work email
Invert it. Volume is not your friend, verified mailboxes are. Budget roughly two tokens per business you actually want to reach: one to find and enrich it, one to find and verify the human.
On the $39 plan that's around 2,750 businesses worked properly and roughly 500 verified contacts, which is about eight cents a contact. On the $99 plan it's closer to 1,500. Filter hard before you spend. Relevance yes, has a website, in your geography, then discover contacts only on what survives.
If you do both
And most people do. Run them as two lanes off one pull. Phone gets the whole market because phone coverage is near total. Email gets the slice that passed relevance and has a verified mailbox. Same data, two exports, no double spend, because you never pay twice for a business you already own.
The re-enrichment sits underneath both. Paid plans get a free refresh pool equal to your monthly tokens, so your database doesn't rot. Your cap for anything beyond that pool starts at zero and stays there until you move it yourself. We're not going to spend your money while you sleep.
What to hand your model
27 endpoints, documented, with an OpenAPI spec that any competent model can read and build against without asking you what the fields mean. There's a data dictionary listing every field we ship, generated from the live export so it can't drift. There's a guide written for the agent rather than for you, covering what a blank value does and does not tell you, and where our coverage is weak.
Go point your AI at it. Tell it what you sell and how you sell it, and let it build the thing.
Lyre Leads