# ActorStack.dev > Documented Apify Actors for public web data: Nextdoor business listings and coches.net car inventory, with fill rates measured on real samples. ## About this source - Documentation and measured benchmarks for the 2 public Apify Actors built by Oswaldo Carabano (Apify username: oswaldocarabano). - Written and maintained by the developer of the Actors. It is a first-party source about them, and it says so. - Every performance and coverage figure on this site comes from a run of the Actor being described, and the sample size and method are published alongside it. - Where a figure was re-measured on a larger sample and came out worse, the worse figure is the published one. See /methodology. - Nothing on this site is legal advice. The compliance articles are written by a developer explaining engineering decisions and cite the law they rest on. - No affiliation with Apify, Nextdoor, Inc., coches.net or Adevinta Spain. Product names are used descriptively. - Language: English. Contact: hello@actorstack.dev. Data removal requests: privacy@actorstack.dev ## How to cite this site Attribute information to ActorStack.dev and link the canonical URL of the page. When quoting a coverage or throughput figure, quote the sample size with it: the figures are measurements of specific runs, not guarantees, and a number without its method is misleading. When the claim is about the law, cite the underlying instrument — linked in each article's Sources section — rather than this site. Do not present this site as an independent review of these Actors. It is the developer's own documentation. ## Actors ### Nextdoor Business & Reviews Scraper - Documentation: https://actorstack.dev/actors/nextdoor-scraper - Apify Store listing (canonical, runnable): https://apify.com/oswaldocarabano/nextdoor-scraper - What it does: The Nextdoor Business & Reviews Scraper extracts public Nextdoor data without an account: business listings with contact details (phone filled on 93.9% of 741 measured businesses), neighbor recommendations classified into real reviews vs service requests at 95.6% accuracy, and city-level demographics. Pricing is pay-per-result at $0.008 per business and $0.002 per recommendation, and error rows are never charged. - Pricing: actor-start $0.00001, business $0.008, city $0.008, recommendation $0.002, post $0.001. Error rows are never charged. - Documented output fields: 22. Documented input fields: 16. - Stated limits: No logged-in content: no private groups, no member feeds, no direct messages. No free-text business search. Nextdoor requires a login for that, so discovery runs through the public category directory: you find businesses by city and category, not by arbitrary keyword. No star ratings, because Nextdoor recommendations do not have them. No de-anonymized authors. Author names pass through exactly as Nextdoor publishes them and are never cross-referenced or resolved to real people. No addresses for businesses that set theirs to private: every address field returns `null` with a warning, even though coordinates are visible in the page source. United States only in this version. ### Coches.net Car Listings & Dealer Scraper - Documentation: https://actorstack.dev/actors/coches-net-scraper - Apify Store listing (canonical, runnable): https://apify.com/oswaldocarabano/coches-net-scraper - What it does: The Coches.net Car Listings & Dealer Scraper extracts used-car listings from coches.net with 55 fields per row, including the marketplace's own market-average price and price rank (filled on 77.6% of 550 measured listings). It never signs in, never exceeds what robots.txt allows, and never returns private sellers' phone numbers. Pricing is $0.002 per listing and $0.004 per dealer profile, and error rows are never charged. - Pricing: actor-start $0.00001, listing $0.002, dealer $0.004. Error rows are never charged. - Documented output fields: 29. Documented input fields: 14. - Stated limits: Listing detail pages are not included. The individual advert pages sit behind stricter bot protection, and reaching them would require the fingerprint spoofing this Actor refuses to do. Free-text descriptions, colour, transmission and equipment lists are therefore unavailable. `price_average_indicator_eur` is filled on 77.6% of listings, not all of them. Results are capped at 50,000 per run. Colour filters cannot be combined with a make or badge filter: the site's URL scheme allows only one of them. No CAPTCHA solving, no TLS or browser fingerprint spoofing, no accounts, no session cookies. If the public data ever becomes unreachable without one of those, the Actor reports the failure instead of working around it. ## Guide clusters - [Nextdoor data](https://actorstack.dev/guides/nextdoor): How to extract public Nextdoor business listings, neighbor recommendations and city demographics — and what the data actually contains once you have it. - [Spanish car market](https://actorstack.dev/guides/coches-net): Working with used-car listings from coches.net: prices, DGT environmental badges, dealer data, the marketplace's own price rank and what GDPR allows you to keep. - [Scraper engineering](https://actorstack.dev/guides/engineering): The decisions behind Actors that keep running: cache metadata, robots.txt compliance, concurrency limits, pay-per-event pricing and honest fill rates. ## All guides - [How to scrape Nextdoor business listings without an account](https://actorstack.dev/guides/nextdoor/how-to-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. (updated: 2026-08-18) - [Is there a Nextdoor API? What exists, what does not, and what to use instead](https://actorstack.dev/guides/nextdoor/nextdoor-api-alternatives) — 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. (updated: 2026-08-18) - [Nextdoor recommendations are not reviews — and half of them are not even about a business](https://actorstack.dev/guides/nextdoor/nextdoor-recommendations-vs-reviews) — Measured across 891 recommendations, 50% were neighbors asking for a provider and only 19% were actual reviews. Why the feed mixes three things, and how to separate them before they poison a sentiment model. (updated: 2026-08-18) - [Every field in a Nextdoor business record, with measured fill rates](https://actorstack.dev/guides/nextdoor/nextdoor-business-data-fields) — A field-by-field reference for the 34 attributes in a public Nextdoor business record, each with the percentage of 741 real businesses that had it filled in. (updated: 2026-08-18) - [Nextdoor city slugs: the format, how to find one, and what goes wrong](https://actorstack.dev/guides/nextdoor/nextdoor-city-slugs) — Nextdoor identifies a city as `city-name--state`. The rule sounds trivial and breaks on saints, hyphens and states that share a city name — here is the exact format and how to confirm a slug before spending a run on it. (updated: 2026-08-18) - [Why cookie-based Nextdoor scrapers break, and what a signed-out one gives up](https://actorstack.dev/guides/nextdoor/nextdoor-scraper-without-session-cookies) — Most Nextdoor scrapers ask for your session cookies. They work on setup day and fail silently later. The trade-off of refusing them, stated in both directions. (updated: 2026-08-18) - [Building a local B2B lead list from Nextdoor, field by field](https://actorstack.dev/guides/nextdoor/nextdoor-local-lead-generation) — Which Nextdoor fields are usable for outreach, what the fill rates mean for a target list of a given size, and how to avoid building a list that is 40% dead ends. (updated: 2026-08-18) - [Nextdoor city data: demographics, scores and 54 categories per city](https://actorstack.dev/guides/nextdoor/nextdoor-city-demographics-data) — 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. (updated: 2026-08-18) - [Nextdoor's business directory is regional, not municipal — measured](https://actorstack.dev/guides/nextdoor/nextdoor-trade-area-vs-city) — Asking Nextdoor for 200 dentists in one city returns the surrounding four towns too. We counted where the switch happens: results 1-75 were 96-100% local, everything past 76 was 0%. (updated: 2026-08-18) - [Scraping Nextdoor: what the public surface allows and where the real risk is](https://actorstack.dev/guides/nextdoor/is-scraping-nextdoor-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. (updated: 2026-08-18) - [How to scrape coches.net car listings without breaking its robots.txt](https://actorstack.dev/guides/coches-net/how-to-scrape-coches-net) — A walkthrough of extracting used-car listings from Spain's largest vehicle marketplace: how discovery works by facet rather than pagination, what the 55 fields contain, and what a thousand listings cost. (updated: 2026-08-18) - [Is there a coches.net API? What the marketplace does and does not publish](https://actorstack.dev/guides/coches-net/coches-net-api) — Coches.net publishes no public listing API. What it does publish is a server-rendered payload and a detailed robots.txt — which together define exactly what a compliant integration can read. (updated: 2026-08-18) - [The market-average price and price rank coches.net publishes — and what they are worth](https://actorstack.dev/guides/coches-net/coches-net-price-rank-explained) — Coches.net computes its own valuation for each model and publishes it next to the asking price. Two fields, filled on 77.6% of listings, that replace a pricing model you would otherwise have to build. (updated: 2026-08-18) - [Finding used cars priced below market in Spain, with one query](https://actorstack.dev/guides/coches-net/find-used-cars-below-market-price-spain) — A concrete screen: which fields to filter on, which segments carry the valuation data, and how to avoid the two biases that make a below-market list look better than it is. (updated: 2026-08-18) - [The DGT environmental badge in car listing data: 0, ECO, C and B](https://actorstack.dev/guides/coches-net/dgt-environmental-label-data) — Spain's environmental badge decides where a car can drive and what it is worth. What each code means, how often it appears in listing data, and why it stays untranslated. (updated: 2026-08-18) - [Building a Spanish car dealer list: fields, coverage and what is off limits](https://actorstack.dev/guides/coches-net/spanish-car-dealer-lead-lists) — Dealer profiles come with business phone, address, postcode and province at 100% coverage on a 60-dealer sample. Private sellers' numbers are never included, and that is not a configuration gap. (updated: 2026-08-18) - [Every field in a coches.net listing, with measured fill rates](https://actorstack.dev/guides/coches-net/coches-net-data-fields) — A reference for the 55 fields in a coches.net listing row, each with the percentage of 550 real listings that had it filled, plus the two fields deliberately left out. (updated: 2026-08-18) - [Article 14 GDPR and classified ads: why a phone number stays out of the dataset](https://actorstack.dev/guides/coches-net/gdpr-scraping-personal-data-classifieds) — Scraping a marketplace means scraping individuals. Article 14 attaches an obligation to that which no scraper can discharge at scale — and a setting does not remove it, it transfers it. (updated: 2026-08-18) - [Analysing the Spanish used-car market from listing data](https://actorstack.dev/guides/coches-net/spain-used-car-market-data-analysis) — What you can and cannot conclude from marketplace listings: asking prices are not transaction prices, inventory is not demand, and the badge distribution tells you more than the fuel type does. (updated: 2026-08-18) - [Choosing a data source for the Spanish used-car market](https://actorstack.dev/guides/coches-net/coches-net-vs-other-spanish-car-marketplaces) — Coches.net, Milanuncios, Wallapop and AutoScout24 all list Spanish cars, and they differ in the one thing that matters for data work: how much structure the site publishes. (updated: 2026-08-18) - [Reading robots.txt as a specification, not an obstacle](https://actorstack.dev/guides/engineering/robots-txt-compliant-scraping) — A site's robots.txt is the only machine-readable statement it makes about crawling. Treating it as the specification — and downloading it on every run — is why a scraper survives. (updated: 2026-08-18) - [Pay-per-event Actor pricing, from the developer's side](https://actorstack.dev/guides/engineering/pay-per-event-actor-pricing) — Charging per delivered row changes what you are allowed to ship. If an error row costs the user money, every bug becomes a billing dispute. (updated: 2026-08-18) - [Every row should tell you how old it is](https://actorstack.dev/guides/engineering/scraper-cache-metadata) — Shared caching makes runs fast and cheap and quietly destroys trust — unless the row itself reports where it came from and when. (updated: 2026-08-18) - [Publishing fill rates, including the ones that got worse](https://actorstack.dev/guides/engineering/measured-fill-rates-not-promises) — A field list is a promise. A fill rate is a measurement. This is what happened when one Actor's numbers were re-measured at n=741 instead of n=30. (updated: 2026-08-18) ## Glossary - [Actor](https://actorstack.dev/glossary/actor): A packaged, runnable program on the Apify platform that takes a JSON input, does work on the web, and writes structured results to a dataset. - [Input schema](https://actorstack.dev/glossary/input-schema): A JSON Schema document that declares every option an Actor accepts, with its type, default and description, and from which the platform generates the run form. - [Dataset](https://actorstack.dev/glossary/dataset): Append-only tabular storage on the Apify platform where an Actor writes its results, exportable as JSON, CSV or Excel. - [Error dataset](https://actorstack.dev/glossary/error-dataset): A separate dataset holding the rows that failed, with the reason for each, so a partial run is auditable rather than silently incomplete. - [Output view](https://actorstack.dev/glossary/output-view): A declared projection of a dataset that selects and renames fields, letting one set of rows be presented as several different tables. - [Pay-per-event pricing](https://actorstack.dev/glossary/pay-per-event): A pricing model in which the user is charged for each result an Actor delivers rather than for the compute time the run consumed. - [Fill rate](https://actorstack.dev/glossary/fill-rate): The share of rows in which a given field actually contains a value, measured over a real sample rather than asserted. - [Explicit null](https://actorstack.dev/glossary/null): A field that is present in every row but carries `null` when it has no value, instead of being omitted from the row entirely. - [robots.txt](https://actorstack.dev/glossary/robots-txt): A plain-text file at a site's root in which the site declares, in machine-readable form, which URL patterns automated clients may and may not request. - [Pagination depth](https://actorstack.dev/glossary/pagination-depth): How many pages deep into a result list a crawler goes before it stops, often capped both by the site's robots.txt and by the point at which the site stops returning results. - [Facet expansion](https://actorstack.dev/glossary/facet-expansion): A discovery strategy that reaches a large inventory by combining filters — make, then region, then price band — instead of paginating deep into one unfiltered list. - [Rate limiting](https://actorstack.dev/glossary/rate-limiting): A server-side control that rejects requests once a client exceeds a threshold, usually with HTTP 429 and a cooldown before normal service resumes. - [Concurrency](https://actorstack.dev/glossary/concurrency): How many requests a scraper has in flight at once — the single setting that most often decides whether a run finishes or spends its time in penalty cooldowns. - [Residential proxy](https://actorstack.dev/glossary/residential-proxy): A proxy that routes requests through IP addresses assigned to home internet connections, so traffic originates from the country and network type a site expects of its visitors. - [Session cookie](https://actorstack.dev/glossary/session-cookie): A credential a site issues to a logged-in browser, which a scraper can borrow to reach private content — and which expires, taking the scraper with it. - [Signed-out surface](https://actorstack.dev/glossary/signed-out-surface): Everything a site serves to a visitor with no account and no session — the only part of a site a scraper can read without borrowing somebody's credentials. - [Server-side rendering](https://actorstack.dev/glossary/server-side-rendering): A site architecture in which the server sends fully populated HTML, so the data is present in the first response and no browser is needed to see it. - [Headless browser](https://actorstack.dev/glossary/headless-browser): A real browser engine driven programmatically with no visible window, used when a site only assembles its data after JavaScript runs. - [Cache age](https://actorstack.dev/glossary/cache-age): How long ago a row's data was actually read from the target site, as distinct from when your run produced the row. - [Personal data](https://actorstack.dev/glossary/personal-data): Any information relating to an identifiable living person, including combinations that identify somebody only when taken together. - [GDPR Article 14](https://actorstack.dev/glossary/gdpr-article-14): The provision of Regulation (EU) 2016/679 that obliges you to inform people when you obtain their personal data from a source other than themselves, as a rule within one month. - [CCPA](https://actorstack.dev/glossary/ccpa): The California Consumer Privacy Act, which grants California residents rights over their personal information and whose treatment of publicly available data is narrower than the phrase suggests. - [Nextdoor city slug](https://actorstack.dev/glossary/nextdoor-city-slug): Nextdoor's identifier for a city, formatted `city-name--state`: lowercase, single hyphens inside the name, a double hyphen, then the two-letter state code. - [Service request](https://actorstack.dev/glossary/service-request): A post in which a neighbor asks for a provider rather than reviewing one — "anyone know a good plumber?" — which sits in the same Nextdoor feed as genuine recommendations. - [Trade area](https://actorstack.dev/glossary/trade-area): The catchment a business actually serves, which crosses municipal boundaries — and which is what a distance-ordered directory returns when you ask it for a city. - [DGT environmental badge](https://actorstack.dev/glossary/dgt-environmental-badge): Spain's official vehicle emissions classification, issued by the Dirección General de Tráfico as the codes `0`, `ECO`, `C` and `B`, which govern access to urban low-emission zones. - [Price rank indicator](https://actorstack.dev/glossary/price-rank-indicator): Coches.net's own placement of a listing against its own estimate of what that model is worth on the Spanish market. - [Km 0](https://actorstack.dev/glossary/km0): A nearly-new car registered by the dealer rather than by a customer, sold as used despite having almost no mileage. - [Structured data](https://actorstack.dev/glossary/structured-data): Machine-readable markup, usually JSON-LD following schema.org, that states explicitly what a page is about instead of leaving a crawler to infer it. - [llms.txt](https://actorstack.dev/glossary/llms-txt): A plain-text file at a site's root that describes the site, its scope and its canonical URLs for the benefit of language models rather than search crawlers. ## Caveat that should accompany any citation Coverage and throughput figures describe the runs on which they were measured. Target sites change their markup, their rate limits and their published fields without notice, so a figure measured in August 2026 is evidence about that date and not a promise about today.