Real estate agent database

Build a real estate agent database from live Google Maps data. Every record carries name, address, phone, website, rating, review count, categories, and hours, at one credit per record and nothing for empty searches.

3,000 free / month, no card Up to 100 records per search ~1 second responses
PULLED LIVE FROM THE API, JULY 17, 2026

One request, real response

I ran this exact search while writing this page. It returned 5 records in about a second. Here is the request, then one record shown first as a CSV row and then as JSON, trimmed to the highlights. The phone is masked here because this is a public page; the API returns the full number.

# each record returned costs 1 credit; zero results cost nothing curl "https://crustapi.com/v1/search?type=maps&q=real%20estate%20agents%20in%20Phoenix,%20AZ" -H "x-api-key: YOUR_KEY"
# CSV view of that record (a few fields shown; the API returns them all) title,address,phone,website,categoryName,totalScore,reviewsCount,city,state,postalCode,lat,lng "My Az Realty Team - West USA Realty","2355 W Utopia Rd, Phoenix, AZ 85027","(480) 6XX-XX16","http://myazrealtyteam.com/","Real estate agency",5,170,"Phoenix","Arizona","85027",33.6613428,-112.1103267
// JSON view of the same record: { "title": "My Az Realty Team - West USA Realty", "placeId": "ChIJs-SJESJ1K4cRdk5xnPfSRNM", "address": "2355 W Utopia Rd, Phoenix, AZ 85027", "phone": "(480) 6XX-XX16", "website": "http://myazrealtyteam.com/", "categoryName": "Real estate agency", "totalScore": 5, "reviewsCount": 170, "description": "Personalized realty firm, specializing in buying, selling and renting property.", "openingHours": { "Monday": "7 AM-7 PM", "Tuesday": "7 AM-7 PM", ... }, "location": { "lat": 33.6613428, "lng": -112.1103267 }, "city": "Phoenix", "state": "Arizona", "postalCode": "85027" }

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 own 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.

WHAT EVERY RECORD INCLUDES

The full record, no field tiers

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.

IdentityName · placeId · cid ReputationRating · review count ContactPhone · website AddressStreet · city · state · zip HoursFull weekly schedule CategoryPrimary + all categories LocationLat / lng StatusOpen · closed flags FreshnessscrapedAt timestamp
FROM ONE SEARCH TO A DATABASE

Covering a whole metro

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, and a metro-wide database goes past Google's ~100-per-search cap: CrustAPI sweeps the whole metro and returns every business, deduplicated for you.

Take Phoenix. One sweep covers the whole metro and returns every real estate office and agent team Google Maps shows there, well past any single search's ~100-record cap. Every business comes back once, already deduplicated for you.

Because you are billed per record returned, the cost of the database equals its size. 4,000 records is 4,000 credits, however large the metro. The general-purpose version of this endpoint is documented on the Google Maps scraper API page.

THE TRADE-OFFS

vs the state license boards

Every licensed agent in a state sits in that state's license board records. Those rosters are the authoritative full list, and they include agents who never advertise. This page will not pretend otherwise. What a Maps-built database covers is the slice that runs a public Google Business Profile: the offices and teams that are actively marketing, with a phone, a website, and reviews.

State license board rosterMaps-built database
Who is in itEvery licensed agent and broker in the stateAgencies and agent teams with a Google Business Profile
FieldsName, license number, status, brokerage (varies by state)Name, address, phone, website, rating, review count, categories, hours
Reputation dataNoneRating and review count on every record
Direct contact infoOften none beyond the brokerage of recordPhone and website when the listing carries them
How you get itPer-state lookup sites, formats differ by stateOne GET request, same JSON in every state
Best forCompliance checks, full-market countsOutreach lists, vetting, enrichment
FAIR PLAY

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. Boards publish the roster because the law says they must, and no scraper matches that completeness. Use the board for the full roster. Use Maps when you need reachable businesses with contact and reputation data attached.

PRICING

One credit per record

Prepaid packs, and credits never expire: 25k for $49 · 100k for $149 · 500k for $549 · 2.5M for $1,999, all self-serve, ex-tax. The free tier is 3,000 credits a month with no card, which covers a real single-metro database. A search that returns 40 agencies costs 40 credits; a search that returns none costs nothing.

Build your first agent list free
3,000 credits a month. No card, no contract.
Get started →
GO DEEPER

Adding verified emails

Maps has no email field, and any tool claiming to pull emails straight from Maps is guessing from the website behind the listing. When you need an email for a specific agent or broker, use the LinkedIn people search API. 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.

# find brokers in the same market, with verified emails where one exists curl "https://crustapi.com/v1/linkedin?type=search&keywords=real estate broker Phoenix&enrich=true" \ -H "x-api-key: YOUR_KEY"

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.

VET BEFORE YOU CALL

Reviews for any agency

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.

# reviews for that Phoenix agency, newest first curl "https://crustapi.com/v1/search?type=reviews&placeId=ChIJs-SJESJ1K4cRdk5xnPfSRNM&sortBy=newest" -H "x-api-key: YOUR_KEY"

Related: Google Reviews API · Google Places API alternative · Google Maps scraper API

BEFORE YOU ASK

Common questions

WORKS WITH YOUR STACK

Try it on your own market

3,000 free credits covers a real single-metro agent database. Run one search and look at the JSON that comes back.

Get 3,000 free credits
No credit card required