Craigslist Scraper & Monitor avatar

Craigslist Scraper & Monitor

Pricing

from $1.00 / 1,000 listings

Go to Apify Store
Craigslist Scraper & Monitor

Craigslist Scraper & Monitor

Scrape Craigslist by keyword, city, ZIP radius, state or nationwide, with complete results past Craigslist's 360 cap. Monitor mode returns only new listings, price drops and reposts, with Discord, Slack and Telegram alerts. Deal scores, repost detection, scam flags and VIN decoding included.

Pricing

from $1.00 / 1,000 listings

Rating

0.0

(0)

Developer

Jacob Hyde

Jacob Hyde

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Share

Scrape Craigslist listings by keyword and location: a city, a ZIP code with a radius, whole states, or every Craigslist site in the US at once. You get every matching listing, not just the first 360 that Craigslist's own search shows. No account or login needed.

Turn on monitor mode and schedule it: each run returns only what's new since the last run (new listings, price drops, reposts, and optionally listings that sold or were removed) and can post them to Discord, Slack or Telegram. You're never billed for a listing you've already received.

Every listing also gets a deal score against similar listings in the same search, repost detection by photo, and scam-risk flags. Vehicles get VIN decoding and safety recalls from NHTSA. All included, no extra charge.

What you get

For every listing:

FieldExample
Title, price and currency2023 Honda Civic EX 4dr Sedan, 17900, USD
Posted date2026-09-27T16:27:19Z
Location, coordinates and distance from your search pointKaty, houston, TX, 29.74, -95.64, 12.4 mi
Every photoimage links
Category and owner or dealercars & trucks - by dealer
Mileage (vehicles), bedrooms and square feet (housing), pay (jobs)90174 mi / 2 BR, 1065 sq ft
Deal rating: price against the median of comparable listingsgreat, 23% below market ($19,500)
Repost group: the same item posted several times1 of 4 postings, duplicate: true
Scam-risk level and the reasonsmedium: price-far-below-market
Link to the listingcraigslist.org/view/d/...

In monitor mode each row also says what changed (new, price-drop, repost, renewed or removed), the previous price, and when it was first seen.

Turn on Add listing details to also get the full description, every attribute (VIN, title status, condition, drive, fuel, bathrooms, laundry, parking...), the updated date and the map address. Vehicles with a VIN are decoded (year, make, model, trim, engine, drivetrain) and matched with open NHTSA safety recalls.

Seller names and contact details aren't collected.

How to use it

Search by keyword and location

Add keywords, a category and one or more locations. A location can be:

  • a city: "Plano, TX", "Toronto, ON", "London, UK"
  • a ZIP or Canadian postal code: "78704", "M5V 2T6"
  • a Craigslist site: "sfbay", "orlando", "SF bay area"

Cities and postal codes search a radius around them (25 miles unless you set Radius), across Craigslist site borders. Site names search that whole site.

{
"searchQueries": ["toyota tacoma", "4runner"],
"category": "cta",
"locations": ["Plano, TX", "78704"],
"radiusMiles": 60,
"maxItemsPerSearch": 500
}

Search whole states or the whole country

{
"searchQueries": ["airstream"],
"category": "rva",
"searchEverywhere": "US",
"sortBy": "best_deal"
}

Whole states or provinces ("TX", "Florida", "ON") searches every Craigslist site in them. Search everywhere covers the US, Canada, both, or every Craigslist site worldwide. A nationwide US search reads all 413 US sites in about a minute and a half.

Complete results

Craigslist's search page stops at 360 results. This Actor reads the full result set, so a search for every apartment in Orlando returns all 8,000+, and sorting by price or deal finds the real cheapest ones, not the cheapest of the newest 360.

Deals, reposts and scam flags

  • Deal scores compare each price with similar listings in the same search: vehicles by model year and mileage, housing by bedrooms, everything else within the same kind of item. Ratings: great (20%+ below market), good (8%+ below), fair, high (10%+ above). Sort by Best deals first to put them on top, or only get alerts for good deals.
  • Repost detection matches postings by their photos. A single Orlando apartment was posted 88 times under different titles; you get it once. Turn on Hide reposts to drop the copies before you're charged.
  • Scam-risk flags mark listings priced far below comparable ones, photos reused 100+ miles apart (the classic copied rental), and, with details on, phrases common in scams: wire transfers or gift cards, deposits before viewing, owners out of the country, shipping-only deals.

A market snapshot per search is saved too (Output tab, Market snapshot): listing count, median and quartile prices, new listings in the last day and week, owner vs dealer, and median rent by bedrooms.

Filters

All of Craigslist's filters are inputs, grouped by what you're searching:

  • Everything: price, posted within N hours, owner or dealer, condition, has image, titles only, delivery available.
  • Vehicles: make and model, model year, odometer, title status, transmission, fuel, drive, body type, cylinders, paint color.
  • Housing: bedrooms, bathrooms, square feet, housing type, laundry, parking, cats, dogs, furnished, no smoking, wheelchair accessible, AC, EV charging, no broker or application fee.
  • Jobs and gigs: employment type, remote, internship, non-profit, paid gigs.

Craigslist matches keywords anywhere in a post, so a "tacoma" search also returns cars that mention a Tacoma in the description. Only keep listings whose title matches the keywords and Exclude listings with these words drop that noise before you're charged. Craigslist's own syntax works in keywords: road bike | gravel bike matches either, -kids excludes a word.

Paste search URLs

Run any search on craigslist.org and paste its URL into Craigslist search URLs. Every filter in the URL is kept.

Monitor new listings and changes

  1. Set up your searches and turn on Monitor mode.
  2. Run it once. The first run is the baseline.
  3. Add a schedule (every 15 minutes, hourly, daily). Each later run returns only new listings, price drops and reposts. Turn on Include renewed listings to also see listings sellers bumped, and Report removed listings to see what sold or disappeared, with how many days it was listed.

A quiet check reads a whole search in one or two requests, so frequent schedules stay cheap. Use a different Monitor state store name for each independent monitor.

Get alerts

  • Discord or Slack: paste an incoming webhook URL. Each listing shows with photo, price, deal rating, distance and link.
  • Telegram: add a bot token (from @BotFather) and a chat ID.
  • Any other URL receives the listings as JSON.

Nothing is sent when a run finds nothing new. Only alert on deals limits alerts to good or great deals while the dataset still gets everything. For email, Google Sheets, Zapier or Make, use Apify's integrations on the Actor or your task.

Pricing

You pay per event. Platform usage is included.

EventPrice
Listing delivered$0.001 ($1 per 1,000)
Listing details (optional)$0.001 per listing with details
Search checked (once per keyword and location on each run)$0.001
Run start$0.00005

Deal scores, repost detection, scam flags, market snapshots, VIN decoding and recalls are free.

Examples:

  • Pull 1,000 listings once: $1.00 for the listings plus $0.001 for the search.
  • 1,000 cars with full details, VINs and recalls: $2.00.
  • Watch one search every hour for a month: 720 checks x $0.001 = $0.72, plus $0.001 per new listing.
  • Nationwide search: searches spanning many Craigslist sites count one search per 25 sites, so a whole-US search is $0.017 per run plus listings.

Listings you've already received are never billed in monitor mode, and listings your filters drop are never billed. A search that fails or comes back empty is never billed. Set a maximum charge per run in the run options and the Actor stops cleanly when it's reached.

Output example

{
"id": "7973798862",
"url": "https://www.craigslist.org/view/d/houston-2023-honda-civic-ex-4dr-sedan/rLwUTpC68RG_nanPRqzzgQ",
"title": "2023 Honda Civic EX 4dr Sedan",
"price": 17900,
"currency": "USD",
"category": "ctd",
"categoryName": "cars & trucks - by dealer",
"sellerType": "dealer",
"postedAt": "2026-09-27T16:27:19.000Z",
"area": "houston",
"locationText": "Katy",
"latitude": 29.7458,
"longitude": -95.6453,
"distanceMiles": 12.4,
"photoUrl": "https://images.craigslist.org/00505_5xoSIIkuFP2_0g80c6_600x450.jpg",
"photoCount": 17,
"odometer": 90174,
"year": 2023,
"marketPrice": 19500,
"comparableCount": 14,
"priceVsMarket": -0.08,
"dealRating": "good",
"repostGroupSize": 1,
"isDuplicate": false,
"riskFlags": [],
"riskLevel": "low",
"changeType": "new",
"vin": "2HGFE1F77PH304701",
"vinTrim": "EX",
"vinEngineLiters": 1.5,
"recallCount": 4,
"searchKeyword": "honda civic",
"searchLocation": "25 mi around 77077",
"scrapedAt": "2026-09-27T18:00:00.000Z"
}

The Output tab has views for listings, deals, monitor changes, vehicles and housing. Download results as JSON, CSV, Excel or HTML, or read them through the Apify API.

FAQ

Do I need a Craigslist account? No. The Actor only reads what anyone can see on Craigslist without logging in.

Can I get seller emails or phone numbers? No. Craigslist hides reply addresses behind a CAPTCHA, and this Actor doesn't collect contact details. The listing description is included as posted.

How accurate are deal scores? They compare against the listings in your own search, so they're as good as the search is specific. "2015-2018 Toyota Tacoma" gives sharper scores than "truck". Vehicles without a model year in the title get a score once details supply the year.

Location not found? Try "City, ST", a ZIP code, or a Craigslist site name as it appears in its address (sfbay for sfbay.craigslist.org).

Is it legal to scrape Craigslist? The Actor collects only publicly visible listing data and no personal profiles. How you use the data is up to you; check the rules that apply where you are.

Something broke? Open an issue on the Actor's Issues tab. The Actor is tested against live Craigslist every day.

Place names for city lookups come from GeoNames (CC BY 4.0). Vehicle data comes from NHTSA's public APIs.