Request a tool
All toolsAutomationsGuidesMCP serverRequest a toolPlatformsCategories
Yad2 Scraper icon

Yad2 Scraper

Scrape Yad2.co.il listings: cars, apartments for sale and rent, second-hand goods. Hebrew output, publish dates and photos. Flat $1.20 per 1,000.

182 runs on Apify $0.0012 per listing ($1.2 / 1,000)
Run this in the cloudRun on Apify →

Developer & Research Tools

How it works

  1. 1
    Open it on Apify

    Hit Run on Apify — it opens the tool in the cloud, no install.

  2. 2
    Set the inputs

    Adjust section, vehicleType, dealType (sensible defaults are pre-filled).

  3. 3
    Click Run

    The tool runs on Apify’s cloud and collects the data for you.

  4. 4
    Export the results

    Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.

Pricing

$0.0012 per listing = $1.2 per 1,000

You are charged forWhenPrice
Listing scrapedOne Yad2 listing returned in the dataset. Sample rows, diagnostics, duplicates and listings dropped by the seller-type filter are not charged.$0.0012

Pay-per-event pricing: you are billed per result, not per subscription. Billing is handled by Apify on your own account. These are the live Apify store prices, in effect since 2026-08-09, and they are what you are actually charged.

Inputs

FieldWhat it doesType
sectionWhich part of Yad2 to scrape. Vehicles = cars, motorcycles, scooters, trucks, watercraft. Real estate = apartments and houses for sale, for rent, and commercial property. Second-hand goods = Yad2's marketplace, which needs a search term.string
vehicleTypeOnly used when Section is Vehicles.string
dealTypeOnly used when Section is Real estate.string
queryRequired for the second-hand marketplace, which has no browse-everything endpoint. Hebrew works best: ספה (sofa), אופניים (bicycle), מקרר (fridge). Latin brand names such as iPhone or PlayStation also work. Yad2's vehicle and real-estate feeds have no free-text search at all, so this field is ignored for those sections - filter with manufacturer, area, region and price instead.string
searchUrlsOptional. Paste Yad2 search URLs instead of filling in the fields, e.g. https://www.yad2.co.il/vehicles/cars?manufacturer=19&year=2018-2024 or https://www.yad2.co.il/realestate/forsale?city=5000. The section, manufacturer, model, area, region, city, price, year, km and hand filters in the URL are all read.array
manufacturersOptional, vehicles only. Hebrew or English names both work: "Toyota", "טויוטה", "Mercedes-Benz", "Hyundai", "Tesla". 69 manufacturers are recognised. Each one is crawled as its own search.array
areasOptional, vehicles only. Yad2 area by Hebrew or English name ("Tel Aviv-Yafo area", "אזור חיפה והסביבה", "Beer Sheva area") or numeric id. 43 areas are recognised.array
regionsOptional, real estate only. Yad2 splits the country into exactly 8 regions: Center and Sharon (1), South (2), Tel Aviv and surroundings (3), Judea and Samaria (4), Northern coastal plain (5), Jerusalem (6), North and the valleys (7), Jerusalem area (8). Hebrew names and ids both work. Leave empty to sweep all eight.array
cityIdOptional, real estate only. Yad2's numeric city code, e.g. 5000 = Tel Aviv-Yafo, 3000 = Jerusalem, 4000 = Haifa. Take it from the city= parameter of a Yad2 URL. A city only matches inside its own region, so leave Regions empty and the actor will find the right one.integer
minRoomsOptional, real estate only. The fewest rooms a listing may have, counted the way Yad2 counts them, so 3.5 works. Yad2 applies it, so you only get and pay for listings that match. Set on a vehicle or second-hand search, that search is not run.number
minPriceOptional. Prices are in Israeli new shekels.integer
maxPriceOptional. Prices are in Israeli new shekels.integer
minYearEarliest model year to keep. Vehicle categories only, it is ignored on property and other listings.integer
maxYearLatest model year to keep. Vehicle categories only, it is ignored on property and other listings.integer
maxKmOptional, vehicles only. Upper bound on the odometer reading.integer
sellerTypeYad2's API has no seller filter, so this is applied by the actor after the results come back. Listings that do not match are dropped and are never charged.string
includeDetailsOn by default for vehicles and real estate. Yad2's list feeds carry no publish date, no description and no written title, so the actor makes one extra request per listing to get them. Turn this off to run roughly twice as fast when you only need price, location and photos. Second-hand goods already include their title in the list feed and are unaffected.boolean
businessOnlyOptional, second-hand goods only. Return only listings from Yad2 business sellers.boolean
maxItemsHow many listings to return in total. Each returned listing is one charged result; dropped, duplicate and failed rows are never charged. A single vehicle search reaches about 59,000 listings; a real-estate region reaches a few thousand through automatic price-band splitting.integer

What you get

A structured dataset — each result includes fields like:

titlepricecurrencysectionsubSectionsellerTypecityareapublishedAturl

Export every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.

Related tools in Developer & Research Tools

Other ready-to-run tools in the same category — all pay-per-use on the Apify cloud.

GitHub Scraper iconDeveloper & Research Tools

GitHub Scraper

Search GitHub repos and users: stars, forks, language, topics, licence, plus user bio, company and followers. No token needed. $0.90 per 1,000 rows.

18 use cases

Stack Overflow / Stack Exchange Scraper iconDeveloper & Research Tools

Stack Overflow / Stack Exchange Scraper

Search Stack Overflow and Stack Exchange by keyword or tag. Score, answer count, views, reputation and body text. $2 per 1,000 questions.

2 use cases

Package Registry Scraper (npm + PyPI) iconDeveloper & Research Tools

Package Registry Scraper (npm + PyPI)

Get npm and PyPI package metadata as JSON. Version, license, author, repo, keywords and npm monthly downloads. $2 per 1,000 packages.

2 use cases

arXiv Scraper iconDeveloper & Research Tools

arXiv Scraper

Search arXiv papers by title, author, abstract or category. Get full abstracts, authors, categories, DOI, dates and PDF links. $2 per 1,000 papers.

2 use cases

OpenAlex Scholarly Works Scraper iconDeveloper & Research Tools

OpenAlex Scholarly Works Scraper

Search 250M+ OpenAlex papers with no API key. Get titles, authors, venue, year, citations, DOI, OA links and full abstracts. $2.00 per 1,000 papers.

2 use cases

Crossref Scholarly Works Scraper iconDeveloper & Research Tools

Crossref Scholarly Works Scraper

Search 150M+ papers on Crossref: DOI, title, authors, journal, publisher, date, citations and abstract. No API key. $1.00 per 1,000 works.

2 use cases

See all Developer & Research Tools →

Yad2 Scraper: cars, property and second-hand goods from Israel's classifieds

Pick a section, add the filters you want or paste a Yad2 search URL, and you get one row per listing. Hebrew title, price in shekels, city and area, private seller or dealer, photos, the publish date and the link.

Yad2's vehicle and property feeds have no free-text search at all, so there is no keyword box for those. You filter by manufacturer, area, region, price and year instead. The second-hand marketplace is the opposite: it has no browse-everything route, so it needs a search term.

InputA section plus filters, or Yad2 search URLs
OutputOne row per listing
Ceiling50,000 listings per run
Account neededNone
Price$1.20 per 1,000 listings, flat on every plan

🔍 What Yad2 Scraper does

Three parts of Yad2 in one actor. Vehicles covers cars, motorcycles, scooters, trucks and watercraft. Real estate covers apartments and houses for sale, for rent, and commercial property. Second-hand goods is Yad2's marketplace.

Names work in Hebrew or English on both sides. טויוטה and Toyota resolve to the same manufacturer, and so do אזור חיפה והסביבה and Haifa area. 69 manufacturers and 43 areas are recognised, and an unknown name is reported rather than silently ignored.

Real estate is swept region by region, and each region is split into price bands so the crawl can reach past where Yad2 stops paginating one list.

📥 What you give it

{
  "section": "vehicles",
  "vehicleType": "cars",
  "manufacturers": ["Toyota"],
  "areas": ["Tel Aviv-Yafo area"],
  "minYear": 2018,
  "maxPrice": 120000,
  "maxItems": 500
}
FieldDefaultWhat it is
sectionnone, the box starts at vehiclesvehicles, realestate or products. With no section and no URL you get the sample row.
vehicleTypecarscars, motorcycles, scooters, trucks, watercraft. Vehicles only.
dealTypenone, the box starts at forsaleforsale, rent or commercial. Real estate only.
querynone, the box starts at ספהThe search term for second-hand goods, which need one. Hebrew works best. Ignored on vehicles and real estate.
searchUrlsnonePaste Yad2 search URLs instead of filling the fields. Section, manufacturer, model, area, region, city, price, year, km and hand are all read out of the URL.
manufacturersnoneVehicles only. Hebrew or English names, or Yad2 ids. Each one is crawled as its own search.
areasnoneVehicles only. Hebrew or English area names, or ids.
regionsnoneReal estate only. Yad2 has exactly 8. Leave it empty to sweep all of them.
cityIdnoneReal estate only. Yad2's numeric city code, from the city= parameter of a Yad2 URL.
minRoomsnoneReal estate only, pasted real-estate URLs included. The fewest rooms, counted the way Yad2 counts them, so 3.5 works. Yad2 applies it. On a vehicle or second-hand search it stops that search with a free BAD_INPUT row.
minPrice, maxPricenoneIn new shekels.
minYear, maxYearnoneVehicles only.
maxKmnoneVehicles only. Upper bound on the odometer.
sellerTypeanyprivate or business. See the note below.
includeDetailsonOne extra request per listing for the publish date, the written Hebrew title and the description. Turn it off to run roughly twice as fast.
businessOnlyoffSecond-hand goods only. Shops rather than individuals.
maxItems100 when you leave it outTotal listings to return, 1 to 50,000.
proxyConfigurationnoneOptional. Only touch it if the run has to leave through your own servers.

sellerType is applied after the results come back, because Yad2 has no seller filter of its own. Listings that do not match are dropped and never charged. On vehicles the crawl also stops once a full round of results contains none of your seller type, so a narrow filter can return fewer than maxItems while more matches exist further down.

Rows are written at the end of the run, after the detail pass. A very large maxItems with details on can hit the run timeout before anything is delivered. Split big pulls across runs, or turn includeDetails off.

A cityId with no regions sweeps all eight to find the right one. You will see a handful of NO_RESULTS rows next to your real results. They are not charged.

📤 What you get back

A real car listing from a recent run, with most of the photo URLs cut:

{
  "listingId": "bdevnzns",
  "section": "vehicles",
  "subSection": "cars",
  "title": "טויוטה RAV4 Limited היברידי אוט׳ 2.5 (155 כ״ס) 2017",
  "yad2Title": "טויוטה RAV4 שנת 2017 יד שלישית 204,000 ק\"מ",
  "contactName": "גל",
  "description": "טויוטה ראב4 ההיברידית, רכב אמין במיוחד עם חיסכון בדלק...",
  "price": 82900,
  "currency": "ILS",
  "previousPrice": null,
  "sellerType": "business",
  "sellerName": "אוטו אדיר",
  "sellerId": "5263113",
  "categoryId": 1,
  "subCategoryId": 21,
  "city": "פתח תקווה",
  "area": "פתח תקווה והסביבה",
  "areaId": 4,
  "region": null,
  "neighborhood": null,
  "street": null,
  "latitude": null,
  "longitude": null,
  "publishedAt": "2026-07-02T12:48:55+03:00",
  "updatedAt": "2026-09-14T08:45:58+03:00",
  "manufacturer": "טויוטה",
  "model": "RAV4",
  "subModel": "Limited היברידי אוט׳ 2.5 (155 כ״ס)",
  "year": 2017,
  "hand": "יד שלישית",
  "engineType": "היברידי בנזין",
  "engineVolume": 2494,
  "kilometers": 204000,
  "rooms": null,
  "squareMeters": null,
  "floor": null,
  "propertyType": null,
  "condition": null,
  "tags": ["גלגלי מגנזיום", "בקרת שמירת מרחק", "בקרת שיוט אדפטיבית"],
  "images": ["https://images.yad2.co.il/Pic/202607/02/1_3/o/y2_1pa_010458_...", "..."],
  "imageCount": 8,
  "adNumber": "57171185",
  "url": "https://www.yad2.co.il/vehicles/item/bdevnzns",
  "searchUrl": null,
  "scrapedAt": "2026-09-14T05:48:04.651Z"
}

Every section returns the same columns, and the ones that do not apply are null. A flat has no odometer reading and a car has no room count, and both fit one table.

FieldWhat it is
listingIdStable. Use it as your dedupe key.
titleBuilt from the structured fields. yad2Title is the wording Yad2 shows on the item page, and comes from the detail request.
price, previousPriceShekels. price is null rather than 0 when the seller did not publish one.
sellerTypeprivate or business where Yad2 says so, otherwise its own raw wording.
publishedAt, updatedAtIsrael time, with the offset. Only present after a successful detail request, and never on second-hand goods.
Vehicle fieldsmanufacturer, model, subModel, year, hand, engineType, engineVolume, kilometers.
Property fieldsrooms, squareMeters, floor, propertyType.
Second-hand fieldscondition, tags, and propertyType holding the product type.
urlThe item page. Second-hand goods point at market.yad2.co.il instead.

🧾 Reading the output

Three kinds of row can land in your dataset.

RowHow to spot itCharged
A listingIt has a listingId and neither flag belowyes
The sample row_sample: trueno
A diagnostic_diagnostic: true and an errorCodeno

A real listing row carries no charged field, so filter on _sample and _diagnostic being absent. Run it with no section and no URL and you get the sample row on its own.

CodeWhat it means
BAD_INPUTA manufacturer, area, region or URL you gave was not recognised, or minRooms was set outside real estate. The row names which one. When none of the names in a list are recognised, that search is not run at all, so it never falls back to everything. The rest of the run carries on.
NO_RESULTSThat search ran and matched nothing. Widen the price range or drop a filter.
BLOCKEDYad2 would not serve that request. Nothing from it was charged.

If a detail request fails for one listing, the row is still returned and still charged, with publishedAt, description and yad2Title left null and nothing on the row to mark it. Check for a null publish date on vehicle and property rows if that field matters to you.

▶️ How to run it

1. Open Yad2 Scraper and click Try for free. 2. Pick a Section. For second-hand goods, type a Hebrew Search term. 3. Add filters: manufacturer and area for vehicles, region or city id for property, price for both. 4. Set Maximum listings. Start around 100 to see the output shape, then click Start. 5. Download the dataset as JSON, CSV or Excel, or read it from the Apify API.

💰 How much does it cost?

$1.20 per 1,000 listings. Flat on every Apify plan, no volume tiers.

You pay per listing row delivered. The sample row, diagnostic rows, duplicates and listings dropped by the seller-type filter carry no listing charge, and a search that matches nothing produces none either. Turning on the detail pass costs nothing extra per listing.

💡 What people use it for

  • Watching one manufacturer and area daily and picking up what was listed since yesterday, deduping

on listingId.

  • Building a price curve for a model by year and mileage across a few thousand rows.
  • Pulling a rental region with sellerType on private to skip the agencies.
  • Tracking how long listings stay up, by comparing publishedAt against when they stop appearing.

🚧 What it does not do

  • No contact details. Yad2 does not publish phone numbers or emails, so neither does this.

contactName and sellerName are as far as it goes.

  • No keyword search on vehicles or property. Yad2's own feeds have none. Use the filters.
  • Second-hand goods need a search term and come back without a publish date, because that feed

does not carry one.

  • Real estate is deep, not complete. A region reaches a few thousand listings through the price

band splitting, not everything Yad2 holds.

  • Roommates and agricultural machinery are not covered.
  • Second-hand results are not repeatable. Yad2 orders that marketplace differently on each

request, so two identical runs return overlapping rather than identical sets.

  • A pasted URL wins. The form's year, kilometre, manufacturer and area fields are ignored for

that search.

  • Rows are a snapshot. A listing can be edited, sold or removed afterwards, and scrapedAt

records when it was read.

🧭 Which classifieds scraper do you need?

If you wantUse
Israeli classifieds: cars, property and second-handThis one
Spanish classifiedsMilanuncios Scraper
Russian classifiedsAvito Listings Scraper
US classifieds by cityCraigslist Scraper
European used cars with full specsAutoScout24 Scraper

❓ Questions people ask

Do I need Hebrew? Not for the filters. Manufacturer and area names work in English. The second-hand search term does better in Hebrew, because that is what sellers write.

Where do I find a city id? Open the city on Yad2 and read the city= value out of the URL. 5000 is Tel Aviv-Yafo, 3000 Jerusalem, 4000 Haifa.

Why is publishedAt empty? Either the listing is second-hand goods, which carry no date, or you turned the detail pass off, or that one detail request did not come back.

Can I filter to private sellers? Yes, set Seller type. It is applied after the results arrive, and the dropped rows are not charged.

How many listings can I get? Up to 50,000 in one run. A single vehicle search reaches about 59,000, so your cap is usually the limit rather than Yad2.

Is scraping classifieds legal? These are public listings on public pages. They carry personal data all the same, which GDPR and similar laws cover, so have a reason for collecting it. Apify's write-up on scraping and the law is a good starting point, and we are not lawyers.

🆘 If something breaks

Open the Issues tab on the actor page. Send the section and filters you used, or the URL, and the run ID. The errorCode on the diagnostic row usually names the problem on its own.