VOOZH about

URL: https://apify.com/bovi/craigslist-scraper

⇱ Craigslist Scraper – Listings, Prices & Contacts Β· Apify


πŸ‘ Craigslist Scraper – Listings, Prices & Seller Contacts avatar

Craigslist Scraper – Listings, Prices & Seller Contacts

Pricing

from $1.35 / 1,000 listing records

Go to Apify Store

Craigslist Scraper – Listings, Prices & Seller Contacts

Scrape Craigslist listings from any city and category. Returns title, price, images, location, post_id, URL, and optionally description, posted date, and structured attributes. No proxy required. Parses server-side JSON-LD β€” stable against layout changes.

Pricing

from $1.35 / 1,000 listing records

Rating

0.0

(0)

Developer

πŸ‘ Vitalii Bondarev

Vitalii Bondarev

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

4 days ago

Last modified

Share

Craigslist Scraper β€” Listings, Prices & Locations

Scrape Craigslist listings from any US city, category, and search query. Get title, price, images, location, post ID, and listing URL β€” plus optional description, posted datetime, and structured attributes (car specs, condition, odometer, etc.) from detail pages. This Craigslist scraper targets the JSON-LD ItemList block embedded by Craigslist itself β€” structural schema.org data, not CSS class names β€” making it immune to layout redesigns. No proxy required. Pay per result at $1.39 per 1,000 listings.

Not affiliated with or endorsed by Craigslist.


What you get

FieldSourceNotes
post_idDOM link10-digit Craigslist post ID
titleJSON-LDListing title
priceJSON-LDNumeric float; null for free/contact items
price_currencyJSON-LD"USD"
cityJSON-LDCity name (e.g. "San Francisco")
stateJSON-LDState abbreviation (e.g. "CA")
neighborhoodDetail pageSub-city neighborhood; null if not set
latitude / longitudeJSON-LD + detailPrecise coords from detail page when fetchDetails=true
urlDOM linkFull listing URL
categoryURLCategory abbreviation (e.g. "bik", "cto")
area_abbrevURLMetro sub-area (e.g. "sby", "sfc")
posted_datetimeDetail pageISO-8601 UTC; requires fetchDetails=true
image_urlsJSON-LDArray of full-size CDN image URLs
descriptionDetail pagePlain-text body; requires fetchDetails=true
attributesDetail pageDict of label→value (condition, make, cylinders, etc.)
parse_confidenceComputed0.0–1.0 data quality score
warningsComputedList of parse-issue codes
scraped_atComputedISO-8601 UTC timestamp

Common city slugs

CitySlug
San Francisco Bay Areasfbay
New Yorknewyork
Los Angeleslosangeles
Chicagochicago
Seattleseattle
Austinaustin
Bostonboston
Denverdenver

Full list: https://www.craigslist.org/about/sites

Common category codes

CategoryCode
For sale β€” allsss
Bicyclesbik
Cars & trucks by ownercto
Electronicsele
Furniturefua
Apartmentsapa
Jobsjjj
Clothingclt

Full list: https://www.craigslist.org/about/help/abbreviations


Example input

{
"city":"sfbay",
"query":"honda civic",
"category":"cto",
"maxResults":50,
"fetchDetails":true
}

Example output record

{
"post_id":"7938685561",
"title":"2018 Honda Civic EX",
"price":18500.0,
"price_currency":"USD",
"city":"San Jose",
"state":"CA",
"neighborhood":"South Bay",
"latitude":37.3403,
"longitude":-121.9701,
"url":"https://sfbay.craigslist.org/sby/cto/d/san-jose-2018-honda-civic-ex/7938685561.html",
"category":"cto",
"area_abbrev":"sby",
"posted_datetime":"2026-06-04T10:51:23+00:00",
"image_urls":["https://images.craigslist.org/00h0h_ABC_600x450.jpg"],
"description":"Clean title, low miles, well maintained...",
"attributes":{
"condition":"excellent",
"cylinders":"4 cylinders",
"drive":"fwd",
"fuel":"gas",
"odometer":"45,000",
"title status":"clean",
"transmission":"automatic"
},
"parse_confidence":1.0,
"warnings":[],
"scraped_at":"2026-06-04T12:00:00+00:00"
}

How it works

  1. One HTTP request fetches the Craigslist search page for your city/category/query.
  2. JSON-LD parsing (structural, not CSS): Craigslist embeds all results as a schema.org ItemList in the page <head>. Up to ~350 results per query.
  3. DOM link extraction: listing URLs (with post_id, category, area_abbrev) are extracted from <a> tags in the body and matched to JSON-LD items by title slug.
  4. Detail page (optional): each listing's page is fetched for posted_datetime, description, and structured attributes.

Pricing

Pay-per-result: $0.00139 per listing ($1.39 / 1,000 listings).

With fetchDetails=false (default): ~1 request/run β†’ very fast, very cheap.
With fetchDetails=true: 1 + N requests (one per listing) β†’ richer data, proportionally more compute.


Use cases for Craigslist data

  • Price research β€” benchmark used car, electronics, or furniture prices across cities
  • Real estate leads β€” monitor for-rent and for-sale listings in target neighborhoods
  • Resale arbitrage β€” find underpriced items listed by private sellers
  • Job market intelligence β€” pull job listings from the jjj category across metros
  • Academic research β€” analyze classifieds data for economics or sociology studies
  • Competitor monitoring β€” track similar items listed by other sellers in your category

Frequently asked questions

Do I need a proxy? No. Craigslist search pages are server-side rendered and respond 200 from datacenter IPs. No proxy configuration is needed.

How many results per search? Craigslist includes all matching results in one JSON-LD block β€” typically up to ~350 items per query. For more coverage, run multiple narrowed queries.

How do I get descriptions and car specs? Set fetchDetails: true. This fetches each listing's detail page to extract description, posted_datetime, neighborhood, precise latitude/longitude, and structured attributes (condition, make, cylinders, etc.). This multiplies request count by N listings.

What is fetchDetails=false good for? Fast, cheap bulk listing collection β€” title, price, images, location, and URL from a single search-page request. Good for price monitoring and deduplication.

What does parse_confidence mean? 0.0–1.0 data quality score. 1.0 = all critical fields extracted. Below 0.7 = Craigslist may have changed its JSON-LD structure; check warnings for affected fields.

Can I scrape multiple cities? Yes β€” run the actor multiple times with different city slugs, or use Apify's batch run API to fan out across cities in parallel.


Limitations

  • Results per search: up to ~350 (Craigslist's JSON-LD includes all results in one page).
  • posted_datetime, description, attributes require fetchDetails=true.
  • neighborhood is only available on listings where the poster set it.
  • Craigslist does not expose full posted_datetime on search pages.

Integrations

Built for market researchers and resellers tracking US local listings, pricing trends, and inventory by city and category β€” the JSON/dataset output drops into the tools you already run, no glue code:

  • n8n / Make / Zapier β€” trigger a run or pipe every new dataset item into 500+ apps (Google Sheets, Airtable, Slack, HubSpot, your database) with no code: n8n, Make, Zapier.
  • Webhooks β€” fire your own endpoint the moment a run finishes, to push results straight into your pipeline (docs).
  • MCP server β€” expose this actor as a tool to Claude, Cursor, or any MCP client so an AI agent can pull this data mid-conversation (guide).
  • API & SDKs β€” fetch the dataset as JSON, CSV, or Excel through the Apify REST API or the Python / JS SDKs.

See all Apify integrations.

More scrapers from our toolkit

Building a data pipeline? These actors pair well with this one β€” each runs on your own Apify account with the same pay-per-result pricing, no subscription:

Chain any of them together from the Integrations tab (the Run succeeded trigger) to build a multi-step workflow β€” one actor's output feeds the next.

You might also like

Craigslist Classifieds Scraper

fetch_cat/craigslist-classifieds-scraper

Scrape public Craigslist listings by city, category, keyword, price, date, or search URL. Export titles, prices, locations, images, descriptions, attributes, and map data.

Craigslist Scraper

moving_beacon-owner1/craigslist-scraper

Scrape listings from Craigslist across any city and category with filters for price, date and images. Supports pagination and optional detail-page enrichment including description, attributes, coordinates and listing images.

2

Craigslist Search Scraper

xtracto/craigslist-search

Scrape Craigslist search results from any city and category. Each posting includes title, price, location, GPS coordinates, images and a link. Just paste a Craigslist search URL. No login required.

πŸ‘ User avatar

Farhan Febrian Nauval

2

Craigslist Scraper β€” Listings, Prices & Data Extractor

scrapepilot/craigslist-scraper----listings-prices-data-extractor

Scrape Craigslist listings from any US city and category. Get title, price, location, posting date, images, description, and attributes β€” cars, housing, jobs, electronics, and more. No login needed. $6.99/month. 2-hour free trial.

Craigslist Scraper Premium

newbs/Craiglist-scraper-premium

Scrape Craigslist listings by city, category, and keyword. Export titles, prices, dates, URLs, images, descriptions, locations, IDs, attributes, salary, and housing details.

Craigslist Scraper - Listings, Prices & Images

logiover/craigslist-scraper

Scrape Craigslist listings without an API or login. Export Craigslist data to CSV/JSON with prices, images & coordinates. Unofficial API alternative.

Craigslist Scraper

viralanalyzer/craigslist-scraper

Scrape Craigslist listings across all categories and locations. Extract prices, descriptions, images, and contact details.

8

4.7

Craigslist Scraper

maged120/craigslist-scraper

Scrape Craigslist listings (apartments, jobs, for sale, etc.) for any US city. Returns title, price, beds, sqft, location, and listing URL.

Craigslist Scraper - Jobs, Housing, Cars & More

thirdwatch/craigslist-scraper

Scrape Craigslist listings across any city and category: jobs, apartments, cars, services. Extracts title, price, location, neighborhood, description, posting date. Works with all Craigslist cities and categories.