Live from Google Maps at one charge per record.
This exact search ran while writing this page and returned 20 records in under a second. Here is one record, as CSV and as JSON; the phone is masked here, and the API returns the full number.
Set limit up to 100 records per search. Records also carry cid, country code, a scrapedAt timestamp, and listing attributes when Google shows them.
Google's categories for this vertical include Real estate agency, Real estate agent, and Real estate consultant, and all of them come back in the categories array.
No code needed. From zero to a CSV of agencies in about two minutes:
Create a free account. Try it free, no card needed.
Type a search in the playground. Something like real estate agents in Phoenix. The agencies land in a table.
Click export. Download the CSV and open it in Sheets or Excel. Done.
Developers: skip the playground. Copy your key from the dashboard and run the curl above. Same data, as JSON.
Every agency or agent-team record comes complete. One gap up front: Maps records do not include email addresses, because Google does not publish them on Maps. Verified emails come from a different endpoint, covered below.
Google Maps lists tens of thousands of real estate offices and agent teams across the major US metros. One search returns up to 100 of them.
A metro-wide database goes past that cap: CrustAPI sweeps the whole metro and returns every office and agent team, deduplicated for you.
Maps is billed per business returned: 4,000 businesses cost $7.84 at standard prices. The general-purpose version is on the Google Maps scraper API page.
Every licensed agent in a state sits in that state's license board roster, which includes agents who never advertise. A Maps-built database covers the slice that runs a public Google Business Profile: the offices and teams actively marketing, with a phone, a website, and reviews.
| State license board roster | Maps-built database | |
|---|---|---|
| Who is in it | Every licensed agent and broker in the state | Agencies and agent teams with a Google Business Profile |
| Fields | Name, license number, status, brokerage (varies by state) | Name, address, phone, website, rating, review count, categories, hours |
| Reputation data | None | Rating and review count on every record |
| Direct contact info | Often none beyond the brokerage of record | Phone and website when the listing carries them |
| How you get it | Per-state lookup sites, formats differ by state | One GET request, same JSON in every state |
| Best for | Compliance checks, full-market counts | Outreach lists, vetting, enrichment |
When the license board is the better pick: you need every license in the state, you need to verify a license number or its status, or your use case is regulatory. No scraper matches that completeness. Use the board for the full roster; use Maps for reachable businesses with contact and reputation data attached.
You pay the Maps rate for each record a search returns. Forty agencies cost $0.0784 at standard Maps prices. Empty searches are free. Here is the deposit pricing:
| Deposit | Google Search / 1,000 requests | Maps / 1,000 businesses | LinkedIn reads / 1,000 requests | People, Jobs, Refresh / 1,000 units |
|---|---|---|---|---|
| $10+ | $1.00 | $1.96 | $6.00 | $1.96 |
| $149+ | $0.76 | $1.49 | $4.50 | $1.49 |
| $549+ | $0.56 | $1.10 | $3.30 | $1.10 |
| $1,999+ | $0.41 | $0.80 | $2.45 | $0.80 |
| $6,500+ | $0.33 | $0.65 | $1.95 | $0.65 |
| $27,500+ | $0.28 | $0.55 | $1.65 | $0.55 |
| $50,000+ | $0.26 | $0.50 | $1.50 | $0.50 |
| $100,000+ | $0.20 | $0.40 | $1.50 | $0.40 |
Every eligible account gets $6 of free usage monthly. Each deposit keeps its prices until spent; paid funds never expire. People and Jobs bill per successful search, Refresh per accessible profile. Full profiles in People use the read rate per full profile. See all billing details.
Larger deposits unlock lower endpoint prices. Each deposit keeps its prices until spent. See the full deposit table on the pricing page. Prices in USD, ex-tax.
Funds are prepaid and never expire, so an unused pack is still yours next year.
Maps has no email field. Any tool claiming to pull emails straight from Maps is guessing from the website behind the listing.
For a specific agent or broker, use the LinkedIn people search API (beta): search public profiles by name, title, or market, add enrich=true, and results can carry a verified work email.
An address that fails a live verification check comes back null instead of a guess.
A common flow: pull the Maps database first, match the agencies you care about to their people on LinkedIn, then enrich only that shortlist. The full logged-out LinkedIn suite (profiles, companies, jobs, posts) is on the LinkedIn scraper API page.
Swap type=maps for type=reviews and pass a placeId from your database to pull the actual Google reviews for that agency: rating, text, author, and date, sorted and paginated, at roughly 0.3 seconds per call. Useful for scoring which offices to contact first.
Related: Google Reviews API · Google Places API alternative · Google Maps scraper API
No. Maps records carry name, address, phone, website, rating, review count, categories, and hours. Google does not publish emails on Maps, so no Maps scraper can truly return them. For verified emails, use the LinkedIn people endpoints with enrich=true; addresses that fail a live verification check come back null instead of a guess.
No, and the page above says so plainly. State license boards hold the authoritative full roster, including agents who never advertise. A Maps-built database covers the agencies and agent teams that run a public Google Business Profile, which is the actively marketing slice, with contact and reputation data the boards do not carry.
One search returns up to 100 records with the limit parameter. For a whole metro, CrustAPI runs a full-area sweep past that cap and returns every business, deduplicated for you. You pay one charge per record returned, and searches that return nothing are free, so the database costs exactly its final size.
Fresh. Every request scrapes Google Maps live at the moment you ask, and each record carries a scrapedAt timestamp. A brokerage that changed its phone number or closed last month shows its current state, which stored datasets miss.
Logged-out, public-only collection has repeatedly defeated computer-fraud and contract claims, while Google's Terms prohibit automated access that violates instructions like robots.txt. We handle the collection; what you get is business data that is public on the map for anyone to see.
Maps costs $1.96 per 1,000 businesses at standard prices, down to $0.40 for the largest deposit. Empty and failed searches are free. Every eligible account gets $6 of free usage monthly. Paid funds never expire.
The free plan covers a real single-metro agent database. Run one search and look at the JSON that comes back.
Try for free