Autotrader vs Facebook Marketplace vs Craigslist for finding flip cars
The three by-owner sources most flippers work — Autotrader, Facebook Marketplace, Craigslist — are not interchangeable. They have different sellers, different inventory shapes, different price honesty, and dramatically different legal profiles for a tool that scans them. This post is what we can say about all three honestly, given that FlipScout today only scrapes one of them.
What our own numbers actually cover
FlipScout ships with two captured Autotrader by-owner fixtures —
autotrader_austin_p1.json (Austin, 78704, 124 unique
VINs) and autotrader_chicago_p1.json (Chicago, 60614,
125 unique VINs) — plus a live Austin scan on 2026-09-11 that
landed 59 unique listings into data/db.json. That is
roughly 250 by-owner Autotrader rows total — the
empirical dataset behind everything below. Every number under
"Autotrader" comes from that sample; we say "we don't know" where
we don't.
We have not scraped Facebook Marketplace or Craigslist. That is deliberate — see what we won't build — so all Facebook and Craigslist claims below come from published academic and industry sources, not our own counts.
Autotrader: fewer listings, higher signal
The Austin fixture (124 by-owner listings inside 75 miles of 78704)
is a snapshot of a metro. Inventory shape from the shipped
data/db.json live scan of 59 of those rows on
2026-09-11:
- KBB Fair Purchase Price present on 49 of 59 (83%).
Autotrader's
__NEXT_DATA__payload carriespricingDetail.kbbFppAmountper row, so we can score against a real reference for the vast majority of listings on the same call as the scrape. This is the single biggest data-quality advantage the platform has over the other two. - Price range $3,400 to $19,900 under the
default
--max-price 20000filter. - Mileage range 34,805 to 349,000.
- Days-on-site range 1 to 367. The long tail matters — a car sitting for 100+ days is either overpriced or quietly bad, and Autotrader tells you that number for free.
- Zero listings tripped a fatal red flag on this particular sample, versus small but real per-metro proportions in earlier ad-hoc runs. Autotrader by-owner descriptions are consistently longer and more structured than Craigslist prose, which makes the red-flag regexes fire more predictably.
The reason all this is scriptable is that Autotrader ships its
search results as a JSON blob in __NEXT_DATA__. One
HTTP request per search page, and you have every listing on the
page with a VIN, ask price, mileage, days-on-site, image count,
KBB reference, and the full description. Nothing about that is
"scraping" in the pejorative sense — the same request the browser
makes, made by our shipped Playwright session.
The tradeoff: Autotrader by-owner inventory in a given metro is smaller than the other two. Independent industry surveys put Autotrader's total US listing volume in the tens of thousands of by-owner cars at any given time, versus Facebook Marketplace in the millions and Craigslist historically also in the millions. In an Austin-radius scan we saw ~120 listings under $20K; a Facebook Marketplace search for the same criteria typically shows 5–10× that. If sourcing volume is the whole game, Autotrader alone is not enough.
Facebook Marketplace: highest volume, lowest verifiability
Meta's 2025-01-01 Terms amendment explicitly extended its
anti-automation prohibition to logged-off visitors — the change
that closed the Bright Data loophole (see
docs/research/legal.md §1.2). What that means
for a tool like FlipScout is that we cannot host a Facebook
scraper without accepting real legal exposure, and even a
self-hosted client-side scan sits closer to the line than the
equivalent Autotrader flow.
Facebook Marketplace also does not expose VIN, mileage, or seller ZIP as first-class fields the way Autotrader does. A listing might include the year/make/model in the title, a mileage number somewhere in the description, and nothing else structured. The downstream implication is that you cannot machine-score a Facebook Marketplace listing at parity with an Autotrader one. You can filter by ask price and geography; the rest you have to read.
What Facebook does have going for it: the highest seller-response rate of the three by a wide margin, the shortest time-on-market for reasonable listings, and a strong local-social dynamic — sellers list from their real accounts, and a mediocre seller profile is a red flag a machine will never see but a human can spot in two seconds.
Craigslist: still cheap, still the wild west
Craigslist's terms and the Craigslist v. 3Taps precedent
(settled 2015 for $1M plus a permanent injunction, cited in
docs/research/legal.md §1.5) make scraping
Craigslist at scale a categorically bad idea for any hosted
service. As a solo flipper, opening a Craigslist tab and reading
listings by hand is fine; automating it into your workflow is a
reasonable per-user activity that most tooling still avoids
codifying.
On listing quality: Craigslist prices skew low by ~5–15% vs Autotrader for equivalent cars in the same metro — enough of a delta that flippers who work exclusively on Craigslist do so because that spread is where they make their money. The tradeoff is that title fraud rates, misrepresented mileage, and curbstoners (unlicensed dealers listing under private-party guise) are more common there than on either alternative. Our red-flag ladder was built on Craigslist-style prose first because that prose is where the ugly language lives.
What we'd tell a flipper starting fresh
Ranked by expected effort per real deal found, for a solo flipper in a US metro:
- Autotrader by-owner for the highest structured-data-per-listing ratio. This is where a tool like FlipScout does the most work per hour.
- Facebook Marketplace by hand for the highest raw volume. Bring your own red-flag checklist; the machine cannot help you here yet.
- Craigslist by hand for the deepest discounts, with the awareness that the higher headline spread is partly priced in via higher risk. Use the same red-flag lens as Facebook.
If you want the Autotrader half of that stack automated, the FlipScout CLI is the shipped v0.2 answer: it scans, scores against KBB, applies the fatal/major/minor red-flag ladder, and — on your explicit per-VIN ask — pulls a real Algo instant-offer floor. Everything else you still do by hand, and we think that's the honest current answer.