Facebook Marketplace Scraper - Any Category & City
Pricing
Pay per usage
Facebook Marketplace Scraper - Any Category & City
Scrape Facebook Marketplace for any category (electronics, vehicles, furniture, property, and more) or by keyword, no login. Pick a category and cities or whole countries from dropdowns (USA, UK, Canada, Australia, Europe, Mexico, Brazil). Returns id, title, price, currency, location, and image.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Swerve
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
6 days ago
Last modified
Categories
Share
Scrape Facebook Marketplace listings for any product category (electronics, vehicles, furniture, property, and more) or search by keyword like "iPhone 15", with no login. Pick a category and the cities or whole countries you want from dropdowns. Returns the listing id, title, price, currency, location, full description, and image for each listing.
What you get per listing
| Field | Description |
|---|---|
id | Facebook Marketplace listing id |
url | Direct link: https://www.facebook.com/marketplace/item/<id> |
title | Listing title |
price | Price as a number (no symbol), e.g. 450. null for "Free"/no-price listings. See currency. |
currency | ISO currency: USD, GBP, EUR, CAD, AUD, MXN, BRL, or ILS |
location | City/area name from the listing, e.g. Brooklyn, Manchester |
description | Full listing description (from the detail page) |
image | Listing image URL |
category | The browse category label (e.g. Electronics) or Keyword search |
searchQuery | The keyword searched, or empty when browsing a category |
Input
| Field | Type | Default | Notes |
|---|---|---|---|
category | select | Electronics | The Marketplace category to browse. Ignored when a keyword is set. |
searchQuery | string | iPhone | Optional keyword. When set, searches all categories and overrides category. |
cities | multi-select | New York, USA | Pick specific cities (type to filter). |
countries | multi-select | — | Pick whole countries to sweep all their listed major cities. Merged with cities. |
radiusKm | integer | 12 | Search radius around each city center, in km. |
maxPerCoord | integer | 40 | Cards collected per city. Facebook serves at most ~24 per search point to logged-out users. |
matchCityOnly | boolean | false | Off by default: you get the whole metro (a New York search includes Brooklyn, Yonkers, Jersey City). Turn on to keep only the exact city name. |
cityCoveragePoints | integer | 5 | Search points swept per city (more = more coverage, proportional cost). |
fetchDetails | boolean | true | Open each listing for the full description. Slower; turn off for card-level data only. |
extraCoords | array (advanced) | — | Search arbitrary points: { label, lat, lng, radiusKm, countryCode, currency }. |
proxyConfiguration | proxy | Apify RESIDENTIAL | The actor automatically rides a proxy in each city's own country. |
Just click Run — the prefill searches iPhone in New York. Clear the keyword and pick a category to browse a whole category instead.
Categories
Property for rent, Property for sale, Vehicles, Electronics, Clothing & apparel, Furniture, Home goods, Appliances, Garden & outdoor, Tools & home improvement, Toys & games, Sporting goods, Pet supplies, Musical instruments, Books/movies/music, Baby & kids, Hobbies, Antiques & collectibles, Entertainment, Free stuff.
Cities and countries
Pick specific cities from the Cities dropdown, or add whole countries under Countries to include all their listed major cities at once. Covered countries: USA, UK, Canada, Australia, Ireland, Spain, Germany, France, Italy, Portugal, Netherlands, Mexico, Brazil, and Israel. For a location not in the list, add it under Advanced → Extra coordinates:
[{ "label": "Valencia", "lat": 39.4699, "lng": -0.3763, "radiusKm": 12, "countryCode": "ES" }]
countryCode (ISO-2) picks the proxy country and the default currency; it defaults to US.
Example output
Keyword search (USD):
{"id": "1689727542231621","url": "https://www.facebook.com/marketplace/item/1689727542231621","title": "iPhone 13 Pro 256GB - Unlocked","price": 480,"currency": "USD","location": "Brooklyn","description": "Great condition, battery health 92%, comes with box and charger...","image": "https://scontent.fsdv1-2.fna.fbcdn.net/v/t39.84726-6/...jpg","category": "Keyword search","searchQuery": "iPhone"}
How it works
Facebook Marketplace shows public listings to logged-out users, but only if you reach it the right way:
- Location by city slug (keyword + general categories). For logged-out users the URL
latitude/longitudeare honored only on the Property categories; for keyword search and general category browse Facebook ignores the coordinate (and the proxy country) and falls back to a default location. The reliable lever is Facebook's own location slug in the URL path:/marketplace/<city>/search?query=...(keyword) and/marketplace/<city>/<category>/(browse) return that city's metro. The actor maps each dropdown city to its verified slug. - Location by coordinate (Property only). The two Property categories genuinely honor
latitude/longitude, so they are swept as a small grid of coordinate points across the city for wider coverage. - Per-country proxy + language. Selected cities are grouped by country, and each group is crawled over an Apify RESIDENTIAL proxy in that country with the matching
Accept-Languageheader. This reduces anti-bot friction and returns the right locale. - No infinite scroll. Logged-out infinite scroll does not load more listings, so each city returns roughly 24-40 cards per search. Coverage comes from selecting more cities, not from scrolling.
- No-login detail enrichment. The full description lives in the listing detail page's meta tags and embedded JSON, present even though a login prompt overlays the content.
- Currency by country. For dropdown cities the currency (USD, GBP, EUR, CAD, AUD, MXN, BRL, ILS) is taken from the city's own country, so a bare
$in Canada is read as CAD, not USD.
Every city in the dropdown has a verified Facebook location, so keyword and general-category searches target the chosen city (and its metro) accurately.
Each listing is deduped by id within the run.
Limits and notes
- ~24-40 listings per city. A Facebook limit for logged-out users, not an actor cap. Add more cities to get more.
- Some listings have no description. A minority ship an empty description; the card-level data (price, currency, location, title, image) is always kept.
- Residential proxy required. Datacenter IPs get a login wall. The actor uses Apify RESIDENTIAL proxy and picks each city's country automatically (the prefilled default).
Use cases
- Price research and resale/arbitrage sourcing across a category or a specific product.
- Lead generation and market monitoring (property, vehicles, and more), in one country or across many.
- Tracking new supply per city over time, side by side across markets.