ActorStack.dev
Nextdoor dataExplainer

Nextdoor city data: demographics, scores and 54 categories per city

The city dataset is the least known part of Nextdoor's public surface and the most useful for market sizing: residents, income, age, homeownership, subjective scores and full category coverage.

By Oswaldo Carabano6 min read

Short answer

Nextdoor publishes a city-level profile alongside its business directory: resident count, average income and age, homeowner percentage, subjective safety, friendliness and affordability scores, all 54 business categories it tracks, up to 852 neighborhoods, and counts of classifieds, groups and events. It costs $0.008 per city and lands in a separate `cities` dataset so it never leaves blank columns in the business table.

Key points

  • One row per city, in its own dataset, so business rows stay uniform.
  • The scores — safety, friendliness, affordability — are Nextdoor's own aggregations of neighbor input, not statistical measures. Treat them as a signal about perception, not about fact.
  • Category coverage per city is the fastest way to size a local market before scraping any businesses at all.
  • Neighborhood counts reach 852 in the largest cities, which is a useful proxy for how finely Nextdoor has partitioned an area.
On this page6 sections

The business directory is why most people arrive at Nextdoor's public data. The city profile is the part they discover afterwards and end up using more, because it answers the question that comes before “who are the providers here” — namely, is this market worth working at all.

What is in a city row

  • Population and composition: resident count, average income, average age, homeowner percentage.
  • Nextdoor's own scores: safety, friendliness, affordability.
  • Category coverage: all 54 business categories Nextdoor tracks, and how populated each is in this city.
  • Structure: neighborhood count, reaching 852 in the largest cities.
  • Activity: counts of classifieds, local groups and events.

One row per city, in a separate cities dataset, at $0.008 each. It is the cheapest row type the Actor produces relative to how much is in it.

The scores, and what they are not

Safety, friendliness and affordability are Nextdoor's aggregations of what neighbors report. They are not crime statistics, not census measures, and Nextdoor does not publish the methodology behind them.

That makes them useful for one thing and misleading for another. Comparing two cities' scores within the platform tells you something real about how residents perceive them. Quoting a safety score as though it were a crime rate does not, and this site will not do it.

Using category coverage for market sizing

This is the field that earns the dataset its place. Before scraping a single business, the city row tells you how many of the 54 categories are actually populated in that city — which is a direct proxy for how deep the local market is and, more usefully, where the gaps are.

A category that exists in a city of 60,000 with only a handful of providers is either an underserved market or a market that does not work there. Either way, that is a question worth asking before you commit a full sweep to it.

Why it lands in its own dataset

Because a city and a business are not the same record type. Putting both in one table gives you a business table where the demographic columns are blank on every row except a handful, and a city row where 34 business fields are null. Separate datasets keep both tables uniform, which is the difference between data you can load straight into a warehouse and data you have to clean first.

Join them on source_city_slug, which every business row carries.

A cheap two-stage workflow

Stage one: city data only. Set includeCityData: true, maxBusinessesPerCity: 1, and list every candidate city. Twenty cities costs about 16 cents in city rows and gives you the full profile of each.

stage one — reconnaissance
{
  "cities": ["san-clemente--ca", "dana-point--ca", "mission-viejo--ca"],
  "categories": ["Dentist"],
  "maxBusinessesPerCity": 1,
  "includeRecommendations": false,
  "includeCityData": true
}

Stage two: pick the three or four cities whose income, age and category coverage match your offer, and run the real sweep only on those. The reconnaissance stage costs cents and routinely removes half the candidate list.

Cost

$0.008 per city. Fifty cities is forty cents, which for a market-selection dataset that includes income, age, homeownership and category depth is difficult to beat — and it is a one-off, because demographics do not move week to week. Cache it and set maxCacheAgeDays generously.

Frequently asked questions

What demographic data does Nextdoor publish per city?
Resident count, average income, average age and homeowner percentage, plus its own safety, friendliness and affordability scores, category coverage across all 54 business categories, neighborhood counts and counts of classifieds, groups and events.
Are Nextdoor's city scores reliable?
They are Nextdoor's aggregation of what neighbors report, so they describe perception rather than measurement. They are useful for comparing cities within the platform and misleading if quoted as objective statistics.
Can I get city data without scraping businesses?
Yes. Enable city data and set the business cap to a minimum: you pay $0.008 per city and get the full profile, which is a cheap way to pick which cities are worth a full sweep.

Sources

Every URL below was requested and returned a page on the date shown.

  1. Operator claimchecked 18 Aug 2026
    Nextdoor Business & Reviews Scraper — Actor README and input schemaActorStack / Apify Store
  2. Operator claimchecked 18 Aug 2026
    About NextdoorNextdoor
  3. Platform docschecked 18 Aug 2026
    Dataset storageApify
A suburban residential street of detached houses with cars parked along the kerb.
NextdoorGuide

Scrape Nextdoor business listings

A complete walkthrough: how Nextdoor exposes business data to signed-out visitors, how to select cities and categories, what a first run costs, and how to read the 34 fields you get back.

9 min
A desk with stacked legal reference books, loose documents and a newspaper.
NextdoorExplainer

Is it legal?

The interesting question is not "is scraping legal" but which specific data creates which specific obligation. Public business contact details and neighbor posts are not the same thing.

7 min
A laptop screen showing a plain text-mode terminal with a command prompt.
NextdoorExplainer

Nextdoor API: what exists

Nextdoor has no public data API for business listings or recommendations. Here is what its actual interfaces cover, why the gap exists, and how to get structured data without one.

7 min