OLX  Scraper | Ads, Prices & Cities avatar

OLX Scraper | Ads, Prices & Cities

Pricing

from $2.20 / 1,000 results

Go to Apify Store
OLX  Scraper | Ads, Prices & Cities

OLX Scraper | Ads, Prices & Cities

Scrape OLX guest classifieds from olx.com.br: keyword search, São Paulo or nationwide, cell-phone category pages, and listing detail. Get listId, title, BRL price, city, UF, images and category. Export Excel, CSV or JSON. No seller name, phone, or chat.

Pricing

from $2.20 / 1,000 results

Rating

0.0

(0)

Developer

kane liu

kane liu

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

OLX Brazil Scraper | Ads, Prices & Cities

Scrape OLX Brazil classified ads from olx.com.br — keyword search, São Paulo or nationwide, cell-phone category pages, and listing detail — then download structured results as Excel, CSV, or JSON.

Use this Actor as a practical OLX Brazil scraper / olx.com.br data API for price monitoring, classifieds research, and inventory watches. Enter a Portuguese keyword, pick brasil or estado-sp, and get Dataset rows with listId, title, BRL price, city, UF, images, and live listing URLs.

  • Keyword search on /brasil?q= or /estado-sp?q= (path is the market switch, not state=)
  • Leaf category listings on /celulares (optional keyword q= on the same ads[] channel)
  • Listing detail from live ads[].url ({uf}.olx.com.br/...-{listId}) — keep list priceValue and detail offerPrice separate
  • Guest HTML only — no seller name, phone, neighborhood, zip, or chat
  • Export to Excel / CSV / JSON, or connect Make, n8n, Zapier, Python, or the Apify API
  • Pay per event — Actor start + each Dataset result; platform usage is included (you do not pay separate Apify compute on top)

Unofficial tool. This Actor is not affiliated with, endorsed by, or sponsored by OLX. It collects guest / public classified pages and does not log in, open chat, or scrape private account data.


What does the OLX Brazil Scraper do?

OLX Brazil Scraper lets you extract structured olx.com.br listings without running your own Brazilian residential proxy and anti-bot stack. Give it a search query, a celulares category run, or a batch of live listing URLs, then start a run.

Under the hood, the Actor:

  1. Validates your input (searchType, region, category slug, URLs)
  2. Enforces free-tier caps when you are on a free Apify plan
  3. Calls a managed worker that fetches guest OLX HTML (Chrome TLS + residential egress)
  4. Parses Next.js RSC ads[] (lists) and adview-v3 adDetail / JSON-LD (detail)
  5. Writes Dataset rows plus INPUT_ECHO, RUN_SUMMARY (and ERROR_SUMMARY on failure) to the key-value store

You run it like any other Apify Actor — schedule it, call it from the API, or plug it into automations.


What OLX Brazil data can I extract?

DataKeyword search/celulares categoryListing detail
listId / live URL
Title (subject)
List price (priceValue / BRL)
Detail offer price (offerPrice, offerCurrency)
City / UF
Category name + properties[]varies
Images (img.olx.com.br)
professionalAd / OLX Pay / delivery flagsvaries
Seller name / phone / chat
Neighborhood / zip

Identity key is listId, not adId. Do not invent detail URLs from adId. Skip home recommend cards at /vi/{id} — those are not listing detail pages.


Why scrape OLX Brazil?

OLX Brazil (olx.com.br) is the country’s largest classifieds marketplace for used goods. Teams scrape it to:

  • Watch asking prices for a keyword (bikes, appliances, instruments) nationwide or in São Paulo
  • Pull cell-phone category cards (/celulares) with or without a keyword
  • Follow listing URLs for JSON-LD offer price when list price and detail price differ
  • Feed CRM-adjacent catalogs, BI dashboards, Google Sheets, BigQuery, or AI agents with clean rows — without seller PII

Compared with generic URL scrapers, this Actor returns OLX-specific fields (listId, priceValue, uf, categoryName, listPageUrl) in one input surface.

Honest scope: nationwide + São Paulo search, /celulares, and detail follow are opened. Other Brazilian states, vehicle/real-estate leaf categories, seller stores, and other-country OLX sites stay in the schema but fail-fast until measured — they are not filled with empty “success” rows.


More Actors like this

Need Mercado Libre, other classifieds, e-commerce catalogs, or a generic protected-page scrape? Use a dedicated Actor below for structured fields. Use this Actor for OLX Brazil (olx.com.br) guest search, /celulares, and listing detail.

Similar classifieds & marketplace scrapers

Prefer another specialized scraper?

If your target has a specialized Actor below, use that first — usually cheaper and more structured than a generic scrape.

E-commerce

Real Estate

Jobs & Freelance

General Tools

→ See the full catalog in Related Actors below, or browse apify.com/lentic_clockss.


How to scrape OLX Brazil (no code required)

  1. Create a free Apify account
  2. Open OLX Brazil Scraper
  3. Choose searchType: search, category, or detail
  4. For search: enter a Portuguese keyword (query) and region (brasil or estado-sp)
  5. For category: set categorySlug to celulares (optional query on the same page)
  6. (Optional) Turn on enrichDetails to follow listing URLs (clamps maxPages to 3)
  7. Click Start and download the Dataset as JSON, CSV, Excel, or JSONL

Start with maxResults: 5–15 to verify the query, then scale up. Empty {} runs a tiny national search for sofa so the platform auto-test succeeds — for real jobs, pass a fresh keyword.

Search ads by keyword

In plain English: pick nationwide or São Paulo and a product noun → get a table of matching ads with listId and BRL price.

You give: searchType=search, query=bicicleta, region=estado-sp, maxResults=20.

Scrape the cell-phones category

In plain English: open /celulares → listing cards on the same ads[] channel. Add query to search inside that leaf.

You give: searchType=category, categorySlug=celulares, optional query=samsung.

Follow listing detail URLs

In plain English: pass live {uf}.olx.com.br/...-{listId} URLs from a previous search → merge adDetail / JSON-LD offer price. Do not invent ids or paste /vi/{id} home cards.

Feed AI agents and automations

In plain English: start the Actor from Make, n8n, Zapier, LangChain, or the Apify API → Dataset rows are structured JSON (listId, subject, priceValue, url, city, uf).


How much does it cost to scrape OLX Brazil?

This Actor uses pay-per-event pricing. You are charged for:

EventPrice
Actor Start (apify-actor-start)$0.005 per start
Result (apify-default-dataset-item)$3.00 / 1,000 results ($0.003 each on FREE/BRONZE)

Platform usage costs are included — you do not pay separate Apify compute/proxy usage for this Actor on top of the event prices above (User pays platform usage costs = No).

Volume discount tiers (per result)

Tier$/1,000per result
FREE*$3.00$0.003
BRONZE$3.00$0.003
SILVER$2.60$0.0026
GOLD$2.20$0.0022
PLATINUM$2.00$0.002
DIAMOND$1.60$0.0016

*FREE matches BRONZE for this Actor.

Example cost estimates (FREE/BRONZE)

Results collectedApprox. event cost*
100~$0.31
1,000~$3.01
10,000~$30.01

*Assumes one Actor start at default memory billing for start events, plus $0.003 per Dataset item. Exact start billing can scale with allocated memory (one start event per GB, minimum one). Default memory is 1024 MB.

Free plan limits

On a free Apify plan, this Actor enforces developer limits of 10 runs and 200 results per run. Upgrade to a paid Apify plan for unlimited runs (event prices still apply).


Input examples

Keyword search (São Paulo)

{
"query": "bicicleta",
"searchType": "search",
"region": "estado-sp",
"maxResults": 20,
"maxPages": 1
}
{
"query": "geladeira",
"searchType": "search",
"region": "brasil",
"maxResults": 20,
"maxPages": 1
}

Cell-phones category (optional keyword)

{
"searchType": "category",
"categorySlug": "celulares",
"query": "samsung",
"maxResults": 15,
"maxPages": 1
}

Listing detail follow

{
"searchType": "detail",
"detailUrls": [
"https://sp.olx.com.br/grande-campinas/ciclismo/bicicleta-schwinn-1402539953"
],
"enrichDetails": true
}

Use a live URL from a previous Dataset row. Do not hand-build from adId.


FAQ

How do I scrape OLX Brazil listings?

Open this Actor, pick search or category, set query / region / categorySlug, and click Start. Export the Dataset as CSV, Excel, or JSON. You can also call it as an OLX Brazil API via the Apify REST API or Python/JavaScript clients.

Do I need an OLX account or API key?

No. This Actor reads guest olx.com.br pages. You do not log in, and you do not pass an OLX developer key.

Which regions are supported?

Opened: brasil (nationwide path) and estado-sp (São Paulo). Other estado-* values stay in the input enum so the coverage matrix is visible, but they fail-fast until a Cloud Run smoke returns listId≥1. Do not assume São Paulo implies Rio or Minas.

Can I scrape cars or real estate?

Not on this build. searchType=vehicles and searchType=realestate fail-fast. Category hubs (autos-e-pecas, imoveis) are not listing pages. Use a dedicated vehicles Actor if you need car filters / FIPE.

Can I get seller phone numbers or names?

No. OLX hides contact behind login/chat. This Actor strips seller name, phone, neighborhood, zip, and chat on purpose (LGPD-friendly guest fields only).

Why did empty {} search for sofa?

The national home without q= is not a list. Schema default query=sofa makes the platform auto-test a real /brasil?q=sofa search. For production, pass your own Portuguese keyword.

This Actor collects publicly reachable guest pages. You are responsible for how you use the data (including Brazil’s LGPD). This is an unofficial third-party tool.

Is this affiliated with OLX?

No.


Input reference

ParameterTypeDescription
querystringKeyword for search (default sofa). Portuguese product nouns work best
searchTypestringsearch | category | detail | hub (hub returns leaf slugs, not ads)
regionstringOpened: brasil, estado-sp. Other UFs fail-fast
categorySlugstringOpened leaf: celulares. Hubs rejected
detailUrlsarrayLive {uf}.olx.com.br/...-{listId} URLs
maxResultsintegerCap Dataset rows (free plan ≤ 200)
maxPagesintegerList pager o= from 1; ~50 cards/page; cap 8
enrichDetailsbooleanFollow listing URLs; clamps maxPages to 3
priceMin / priceMaxintegerOptional list query ps= / pe= (BRL)
sortstringOptional sort query; omit for site default

Full output schema is available in the Dataset tab. Key-value records: INPUT_ECHO, RUN_SUMMARY, ERROR_SUMMARY (no internal worker URLs).


Connect to your tools

PlatformHow to connect
Make.comSearch "Apify" → "Run Actor" → Actor ID: lentic_clockss/olx-br-scraper
n8nAdd Apify node → "Run Actor" → same Actor ID
ZapierApify integration → "Run Actor"
Python / Node.jsApify SDK or direct HTTPS call

API call example

curl "https://api.apify.com/v2/acts/lentic_clockss~olx-br-scraper/runs" \
-X POST \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"query":"bicicleta","searchType":"search","region":"estado-sp","maxResults":10}'

Results:

GET https://api.apify.com/v2/datasets/{datasetId}/items?format=json

Live-view Standby API

This Actor enables Apify Standby and ships .actor/openapi.json for Live-view:

  • GET / / GET /health — Actor readiness (no scrape)
  • GET /input-example — safe low-cost example input
  • GET /openapi.json — OpenAPI document
  • POST /search — optional Live-view preview (capped maxResults); persist production results with a normal Actor run

Full jobs should be launched as normal Apify Actor runs so Dataset rows plus INPUT_ECHO, RUN_SUMMARY, and ERROR_SUMMARY are persisted.


Runtime

SettingValue
Default memory1024 MB
Timeout default3600 s
StandbyEnabled (lightweight Live-view)
Free plan caps10 runs / 200 results per run
Content depthguest (no OLX login)

All public Actors from lentic_clockss. Click a name to open the Store detail page.

Classifieds & Marketplaces

Apps & ASO

E-commerce

Food Delivery

Jobs & Freelance

Real Estate

Travel & Stays

Social & Content

Ads Intelligence

Local & Maps

General Tools

→ Browse the full profile: apify.com/lentic_clockss


Changelog

  • 0.1.6 — Store README (SEO, How to use, pricing, More Actors, Related Actors). PPE: Actor Start $0.005 + result $3.00/1k with volume tiers. Platform usage paid by developer.
  • 0.1.5 — Coverage: estado-sp search opened; /celulares?q=; hub href leaf discovery; MG/RJ and other leaves fail-fast.
  • 0.1.3 — Fail-fast unverified surfaces; empty {}sofa; provider=engine_used.
  • 0.1 — Guest search, /celulares, listing detail. Identity listId.