Avito Scraper — Russia Classifieds & Prices (avito.ru)
Pricing
from $2.10 / 1,000 results
Avito Scraper — Russia Classifieds & Prices (avito.ru)
Scrape Avito.ru search results without login or API key: price, parameters, seller name & rating, address, GPS coordinates, metro, photos and dates. Keyword, category, city, sort and price filters; tens of thousands of listings per run. Export to CSV, Excel or JSON.
Pricing
from $2.10 / 1,000 results
Rating
0.0
(0)
Developer
Logiover
Maintained by CommunityActor stats
0
Bookmarked
151
Total users
6
Monthly active users
3 days ago
Last modified
Categories
Share
Avito Scraper — Russia Classifieds, Prices & Sellers (avito.ru)
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Avito or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.
Avito Scraper extracts listings from Avito.ru (Авито) — Russia's largest classifieds marketplace with more than 170 million live ads — into clean, structured data you can export to Excel, CSV, JSON or Google Sheets. Search by keyword, browse by category and city, sort newest first or by price, set a price range, and get every result card with price, parameters, seller name, seller rating, trust badges, address, GPS coordinates, nearest metro, photos, publication time and the listing URL. No login, no cookies, no API key, no browser.
It is the practical Avito API alternative — an Avito parser (парсер Авито, выгрузка объявлений с Авито) that runs in the cloud: it reads the same search data the avito.ru search page loads, so your keyword, category, location, sort and price filters return exactly the listings you see on the site — 50 per page, up to 5,000 per search, and tens of thousands per run through automatic price-band splitting.
| 🔎 Search modes | keyword · category · city/region (by ID or by name) · any combination |
| 📦 Volume | 50 listings per page · 1,500 per search in Avito's default order · 5,000 per search newest-first or by price · more via automatic price bands |
| ⚡ Speed (measured) | 40 listings in ~3 s · 1,000 in ~26 s · 10,000 in ~6 min |
| 🧾 Fields | 56 per listing — price & salary, parameters, seller, rating, badges, address, coordinates, metro, photos, dates |
| 🛡️ Reliability | handles Avito's security-check pages automatically, rotates network routes when an address is rate-limited |
| 💳 What you pay | from $2.10 per 1,000 listings — pay only for listings saved |
Table of contents
- What data does Avito Scraper extract?
- Why use this Avito scraper?
- Use cases
- How to scrape Avito in 3 steps
- Input
- Input examples
- Avito category IDs
- Avito location IDs
- Output — full data dictionary
- Sample output
- How much data can I get?
- Speed and reliability
- What you pay
- Integrations & API
- Limitations — what this Actor does not do
- FAQ
- Is it legal to scrape Avito?
- Changelog
- Support
What data does Avito Scraper extract?
Every search result card on avito.ru becomes one row with up to 56 fields:
| Group | Fields |
|---|---|
| Listing | id, url, title, description, params (mileage / engine / rooms / deposit / schedule / condition…), badges, isPromoted, isVerified, isReserved, hasVideo |
| Price | price (number, ₽), priceString as shown, priceType (price or salary), priceUnit (per month / per day / net), priceOld, discountPercent, priceWasLowered, pricePerUnit, monthlyPayment (car loans) |
| Category | categoryId, categoryName, categorySlug, rootCategoryId, microCategoryId |
| Location | locationId, locationName (city), address, formattedAddress (region + city), latitude, longitude, nearbyPlaces (nearest metro stations with distance and walking time) |
| Seller | sellerName (person, shop, dealer or employer), sellerType (company, car dealer…), sellerId, sellerUrl, sellerRating, sellerReviewsCount, sellerBadges (e.g. Надёжный продавец, Реквизиты проверены), sellerClosedListings, sellerLogo |
| Contact & delivery | hasPhone, hasDelivery, deliveryText, isMarketplace |
| Media | images (largest resolution URLs), imagesCount |
| Time | publishedAt (ISO time the ad was published or last raised), publishedAgo |
| Context | query, searchUrl, searchSort, page, position, scrapedAt |
Fields Avito does not show for a particular listing are null (for example monthlyPayment exists only on cars, nearbyPlaces mostly in cities with a metro).
Why use this Avito scraper?
- ✅ Real Avito search results. The Actor reads Avito's own search endpoint — the one the avito.ru search page uses — so a search for
iphone 13returns iPhone 13 listings,квартираin Kazan returns apartments in Kazan, and the counts match the site (e.g. 28,363 listings for "iphone 13", 117,018 apartments in Moscow on 2026-10-24). - ✅ All the filters you use on avito.ru — keyword, category, city or region, sort order (default, newest, cheapest, most expensive) and price range.
- ✅ Rich seller data — seller or company name, rating, number of reviews, trust badges, seller type and profile link: ready for lead generation and competitor research.
- ✅ Location intelligence — street address, coordinates and nearest metro station with walking time on real-estate listings.
- ✅ Bulk volume — up to 5,000 listings per search, and automatic price bands beyond that, so a single run can collect tens of thousands of listings from a large category.
- ✅ Fast — direct JSON, no headless browser: about 1,000 listings in 30 seconds.
- ✅ Reliable — Avito shows a security-check page to many automated requests; the Actor completes that check automatically and switches network routes when an address is rate-limited, so runs finish instead of failing.
- ✅ No setup — no Avito account, no cookies, no API key, no proxy configuration needed.
- ✅ Honest runs — a run that could not read Avito fails with a clear message instead of finishing "successfully" with an empty dataset; a search that genuinely has no results says so.
Use cases
📈 Price monitoring & market research. Track asking prices for phones, laptops, cars, apartments or any product across Russia or a single city. Schedule the Actor daily, export to Google Sheets and watch prices move. priceWasLowered, priceOld and discountPercent flag price drops.
🏠 Real-estate analytics. Collect apartments (categoryId 24), rooms, houses, land and commercial property with price, price per m² (pricePerUnit, e.g. 428 571 ₽ за м²), rent period, deposit and fees (params), address, coordinates and metro distance. Build rent-vs-sale maps, district price indexes and yield models for Moscow, Saint Petersburg or any region.
🚗 Car market data. Scrape the cars category (categoryId 9) with mileage, engine, gearbox, body type, fuel, dealer vs private seller, monthly loan estimate and "below market price" badges. Ideal for dealers, car-pricing models and import/export analysis.
💼 Job market & salaries. Vacancies (categoryId 111) come with salary (price, priceUnit net/gross), schedule and experience (params), employer name, employer industry (extraInfo) and number of completed postings — a salary dataset for any profession and city.
🧲 Lead generation. Every row carries the seller or company name, seller type, rating, review count and profile URL. Filter shops, dealers, agencies and employers by category and city to build B2B prospect lists.
🛒 Reseller & arbitrage research. Find under-priced items with the Цена ниже рыночной (below market price) badge, compare prices across cities and spot fast-selling categories.
🎓 Academic and economic research. Study the Russian second-hand economy, regional price differences and housing affordability with reproducible, timestamped data.
How to scrape Avito in 3 steps
- Set what to search — type one or more keywords (e.g.
iphone 15,bmw x5,квартира), and/or pick a category and a city. Optionally choose a sort order and price range. - Set how many — Max listings per search (default 1,000) and Max listings in total (default 100). Click Start.
- Download your data — open the Output tab and export to Excel, CSV, JSON, XML or HTML, or fetch it through the Apify API.
Input
| Field | Type | Description |
|---|---|---|
searchQueries | array of strings | Keywords exactly as you would type them on avito.ru. Each keyword is a separate search. Leave empty to browse a category or location. |
categoryId | string | Avito category ID — pick from the list or type any numeric ID (table below). |
locationId | string | Avito location ID of a city or region — pick from the list or type any numeric ID (table below). Empty = all of Russia. |
locationName | string | Any Russian city, town or region by name, e.g. Казань, Тверь, Краснодарский край. The Actor looks up the Avito ID for you. |
sort | string | default (Avito relevance), newest, price_asc, price_desc. |
minPrice / maxPrice | integer | Price range in roubles. |
maxItemsPerQuery | integer | Listings to collect per search (default 1,000). Above 5,000 the search is split into price bands automatically. |
maxResults | integer | Overall cap for the run (default 100; 0 = no overall cap). |
proxyConfiguration | object | Optional. The default works as is — the Actor connects directly and uses Apify Proxy automatically when needed. |
With a completely empty input the Actor browses three popular categories (cars, apartments, phones) so you can see the output format immediately.
Input examples
Search by keyword — all of Russia
{"searchQueries": ["iphone 15", "samsung galaxy s24"],"maxItemsPerQuery": 1000,"maxResults": 2000}
Apartments in Moscow, newest first
{"categoryId": "24","locationId": "637640","sort": "newest","maxItemsPerQuery": 5000,"maxResults": 5000}
Any city by name, with a price range
{"searchQueries": ["диван"],"locationName": "Казань","sort": "newest","minPrice": 5000,"maxPrice": 60000,"maxItemsPerQuery": 500,"maxResults": 500}
Cars in Saint Petersburg, cheapest first
{"categoryId": "9","locationId": "653240","sort": "price_asc","maxItemsPerQuery": 2000,"maxResults": 2000}
Job vacancies with salaries in Novosibirsk
{"searchQueries": ["водитель", "продавец", "бухгалтер"],"categoryId": "111","locationId": "641780","maxItemsPerQuery": 1000,"maxResults": 3000}
Bulk export — tens of thousands from one category
{"categoryId": "24","locationId": "107620","maxItemsPerQuery": 30000,"maxResults": 30000}
For bulk runs give the run a longer timeout (Run options → Timeout, e.g. 3,600 s) and check Maximum cost per run — see What you pay.
Avito category IDs
Pick a category in the input form or pass its ID. Top-level categories ("— all") include all their sub-categories.
| Category ID | Category |
|---|---|
1 | Transport — all (Транспорт) |
9 | Cars (Автомобили) |
14 | Motorcycles & motor vehicles (Мотоциклы и мототехника) |
81 | Trucks & special machinery (Грузовики и спецтехника) |
11 | Water transport (Водный транспорт) |
10 | Spare parts & accessories (Запчасти и аксессуары) |
4 | Real estate — all (Недвижимость) |
24 | Apartments (Квартиры) |
23 | Rooms (Комнаты) |
25 | Houses, dachas & cottages (Дома, дачи, коттеджи) |
26 | Land plots (Земельные участки) |
85 | Garages & parking spaces (Гаражи и машиноместа) |
42 | Commercial real estate (Коммерческая недвижимость) |
86 | Real estate abroad (Недвижимость за рубежом) |
111 | Job vacancies (Вакансии) |
112 | Resumes / CVs (Резюме) |
113 | Services (Услуги) |
5 | Personal items — all (Личные вещи) |
27 | Clothing, shoes & accessories (Одежда, обувь, аксессуары) |
29 | Kids' clothing & shoes (Детская одежда и обувь) |
30 | Kids' goods & toys (Товары для детей и игрушки) |
28 | Watches & jewelry (Часы и украшения) |
88 | Beauty & health (Красота и здоровье) |
6 | Electronics — all (Электроника) |
84 | Phones (Телефоны) |
98 | Laptops (Ноутбуки) |
96 | Tablets & e-books (Планшеты и электронные книги) |
31 | Desktop computers (Настольные компьютеры) |
101 | Computer parts & accessories (Товары для компьютера) |
32 | Audio & video (Аудио и видео) |
97 | Games, consoles & software (Игры, приставки и программы) |
105 | Cameras & photo (Фототехника) |
99 | Office equipment & supplies (Оргтехника и расходники) |
2 | Home & garden — all (Для дома и дачи) |
21 | Home appliances (Бытовая техника) |
20 | Furniture & interior (Мебель и интерьер) |
87 | Kitchenware (Посуда и товары для кухни) |
19 | Repair & construction (Ремонт и строительство) |
106 | Plants (Растения) |
82 | Food products (Продукты питания) |
7 | Hobbies & leisure — all (Хобби и отдых) |
34 | Bicycles (Велосипеды) |
39 | Sports & leisure (Спорт и отдых) |
102 | Hunting & fishing (Охота и рыбалка) |
38 | Musical instruments (Музыкальные инструменты) |
36 | Collectibles (Коллекционирование) |
83 | Books & magazines (Книги и журналы) |
33 | Tickets & travel (Билеты и путешествия) |
35 | Animals — all (Животные) |
89 | Dogs (Собаки) |
90 | Cats (Кошки) |
91 | Birds (Птицы) |
92 | Aquarium (Аквариум) |
93 | Other animals (Другие животные) |
94 | Pet supplies (Товары для животных) |
8 | For business — all (Для бизнеса) |
116 | Ready-made business (Готовый бизнес) |
40 | Business equipment (Оборудование для бизнеса) |
Any other Avito category ID works too — open a category on avito.ru, and the Actor's categoryId field accepts the numeric ID Avito uses for it.
Avito location IDs
| Location ID | Location |
|---|---|
637640 | Moscow (Москва) |
107620 | Moscow + Moscow region (Москва и МО) |
637680 | Moscow region (Московская область) |
653240 | Saint Petersburg (Санкт-Петербург) |
107621 | Saint Petersburg + Leningrad region (Санкт-Петербург и ЛО) |
641780 | Novosibirsk (Новосибирск) |
654070 | Yekaterinburg (Екатеринбург) |
650400 | Kazan (Казань) |
640860 | Nizhny Novgorod (Нижний Новгород) |
661420 | Chelyabinsk (Челябинск) |
635320 | Krasnoyarsk (Красноярск) |
653040 | Samara (Самара) |
646600 | Ufa (Уфа) |
652000 | Rostov-on-Don (Ростов-на-Дону) |
642320 | Omsk (Омск) |
633540 | Krasnodar (Краснодар) |
625810 | Voronezh (Воронеж) |
644200 | Perm (Пермь) |
624840 | Volgograd (Волгоград) |
659020 | Tyumen (Тюмень) |
634450 | Sochi (Сочи) |
659300 | Izhevsk (Ижевск) |
621630 | Barnaul (Барнаул) |
628970 | Irkutsk (Иркутск) |
660250 | Khabarovsk (Хабаровск) |
644560 | Vladivostok (Владивосток) |
662810 | Yaroslavl (Ярославль) |
647420 | Makhachkala (Махачкала) |
657600 | Tomsk (Томск) |
642790 | Orenburg (Оренбург) |
631270 | Kemerovo (Кемерово) |
652430 | Ryazan (Рязань) |
623130 | Astrakhan (Астрахань) |
643560 | Penza (Пенза) |
637440 | Lipetsk (Липецк) |
658080 | Tula (Тула) |
630090 | Kaliningrad (Калининград) |
653140 | Tolyatti (Тольятти) |
650510 | Naberezhnye Chelny (Набережные Челны) |
For any other place use locationName (e.g. "locationName": "Тверь"): the Actor resolves it with Avito's own location search and logs the ID it used.
Output — full data dictionary
| Field | Type | Description |
|---|---|---|
id | string | Avito listing ID (the number at the end of the listing URL). |
url | string | Canonical listing URL on avito.ru (tracking parameters removed). |
title | string | Listing title, e.g. 3-к. квартира, 75 м², 11/17 эт. |
description | string | Description text from the search card (Avito shortens long descriptions to about 250 characters). |
price | number | Price in roubles. For jobs: the salary. For rentals: the rent per priceUnit. |
priceString | string | Price exactly as displayed — 16 100 ₽, 45 000 ₽ в месяц, от 90 900 ₽. |
priceType | string | Цена (price) or Зарплата (salary). |
priceUnit | string | в месяц (per month), за сутки (per day), на руки (net salary)… |
currency | string | Always RUB. |
priceOld | number | Price before a discount, when shown. |
discountPercent | number | Discount percentage, when shown. |
priceWasLowered | boolean | The seller recently lowered the price. |
pricePerUnit | string | Normalised price (e.g. per m²) when Avito shows one. |
monthlyPayment | string | Loan estimate on car listings, e.g. от 21 812 ₽ в месяц. |
params | string | The parameter line: mileage, engine, body, drive and fuel for cars; deposit, commission and utilities for rentals; schedule, pay frequency and experience for jobs; condition, size and brand for clothing; condition for phones. |
categoryId / categoryName / categorySlug | number / string | Category of the listing, e.g. 84 / Телефоны / telefony. |
rootCategoryId | number | Top-level category (1 transport, 4 real estate, 6 electronics, 110 jobs…). |
microCategoryId | number | Avito's fine-grained sub-category. |
locationId / locationName | number / string | City of the listing. |
address | string | Street address entered by the seller. |
formattedAddress | string | Region and city, e.g. Самарская обл., Самара. |
latitude / longitude | number | Coordinates of the listing. |
nearbyPlaces | array | Nearest metro stations or landmarks: { name, distance, travelTime }. |
sellerName | string | Person, shop, dealer or employer name as shown on the card. |
sellerType | string | Seller label, e.g. Компания, Автодилер. |
sellerId / sellerUrl | string | Seller identifier and profile / shop page. |
sellerRating | number | Seller rating (1–5). |
sellerReviewsCount | number | Number of reviews behind the rating. |
sellerClosedListings | number | Completed listings shown for the seller (mostly employers). |
sellerBadges | array | Seller trust badges, e.g. Надёжный продавец, Документы проверены. |
sellerLogo | string | Seller or company logo URL. |
extraInfo | string | Extra card line — for jobs, the employer's industry. |
badges | array | Listing badges, e.g. Цена ниже рыночной, Проверено в Росреестре, Только на Авито. |
isPromoted | boolean | The listing carries a paid promotion. |
isVerified | boolean | Avito marks the listing as verified. |
hasDelivery / deliveryText | boolean / string | Avito Delivery offered, e.g. Доставка от 1 дня. |
hasPhone | boolean | The seller accepts calls (the number itself is shown only to logged-in Avito users). |
isMarketplace | boolean | Avito marketplace (shop) item. |
isReserved | boolean | The item is reserved. |
hasVideo | boolean | The listing has a video. |
images / imagesCount | array / number | Photo URLs in the largest resolution, and the photo count. |
publishedAt | string | ISO time the ad was published or last raised — the time Avito orders "newest first" by. |
publishedAgo | string | Relative date on the card, e.g. 3 часа назад. |
query | string | Keyword that produced the row (empty when browsing). |
searchUrl | string | The avito.ru search page the row came from. |
searchSort | string | Sort order used. |
page / position | number | Results page and position. |
scrapedAt | string | Collection time (ISO 8601). |
The dataset has three ready-made views in the Output tab: Listings, Sellers and Location.
Sample output
An apartment for sale in Moscow, listed by an agency (photos and description shortened):
{"id": "8420076677","url": "https://www.avito.ru/moskva/kvartiry/1-k._kvartira_329_m_59_et._8420076677","title": "1-к. квартира, 32,9 м², 5/9 эт.","price": 14100000,"priceString": "14 100 000 ₽","priceType": "Цена","priceUnit": null,"currency": "RUB","priceOld": null,"discountPercent": null,"priceWasLowered": false,"pricePerUnit": "428 571 ₽ за м²","monthlyPayment": null,"params": null,"categoryId": 24,"categoryName": "Квартиры","categorySlug": "kvartiry","rootCategoryId": 4,"microCategoryId": 4929,"locationId": 637640,"locationName": "Москва","address": "Москва, Новочеркасский бульвар, 22","formattedAddress": "Новочеркасский б-р, 22","latitude": 55.645182,"longitude": 37.721364,"nearbyPlaces": [{"name": "Марьино","distance": "1,5 км","travelTime": "16–20 мин."}],"sellerName": null,"sellerType": null,"sellerId": null,"sellerUrl": null,"sellerRating": null,"sellerReviewsCount": null,"sellerClosedListings": null,"sellerBadges": [],"extraInfo": null,"badges": [],"isPromoted": false,"isVerified": false,"hasDelivery": false,"deliveryText": null,"hasPhone": true,"isMarketplace": false,"isReserved": false,"hasVideo": false,"imagesCount": 18,"publishedAt": "2026-10-24T20:07:35.000Z","publishedAgo": "1 час назад","query": null,"searchSort": "newest","page": 1,"position": 1,"images": ["https://80.img.avito.st/image/1/1.yJNctra-ZHoSHJ5xQMGy6VwWZnzuAWB67mYFcOLtb4DjFWY.pTOZdt4vDy7DYAHuy_9_uZLWs3cLD1LbnnqVd2BZETY","https://b20.img.avito.st/image/1/1.IwEK2La-j-hEcnXjQPBaewp4je64b4vouAju4rSDhBK1e40.JDUqZ6qCyGXGheX8s-t9jMLDlxxc1iw3b8RKq0a-inQ?cqp=2.6_1L9vhKD2uBLt-qyrAoZheVsuS8u7cVFre6r7a9jrN4_pCIDjlm5anolzs-MLkTK_L9899P2epdVNs=","…"],"description": "Предлагаем вашему вниманию уютную однокомнатную квартиру в районе Марьино. Общая площадь составляет 32.9 кв. М, жилая площадь — 18 кв. М, а …"}
An iPhone listing from a shop (photos and description shortened):
{"id": "8489432215","url": "https://www.avito.ru/kaliningrad/telefony/iphone_18_pro_max_256_gb_sim_esim_8489432215","title": "iPhone 18 Pro Max, 256 ГБ, SIM + eSIM","price": 127900,"priceString": "127 900 ₽","priceType": "Цена","priceUnit": null,"currency": "RUB","priceOld": null,"discountPercent": null,"priceWasLowered": false,"pricePerUnit": null,"monthlyPayment": null,"params": "Новый","categoryId": 84,"categoryName": "Телефоны","categorySlug": "telefony","rootCategoryId": 6,"microCategoryId": 1104365,"locationId": 630090,"locationName": "Калининград","address": "Калининград, Советский проспект, 8","formattedAddress": "Калининградская обл., Калининград","latitude": 54.722592,"longitude": 20.499977,"nearbyPlaces": [],"sellerName": "Future Store - Фьюче Стор | Apple, Samsung, Sony","sellerType": "Компания","sellerId": "c341f3e1dbeea96b6e5b6c55ba92d015","sellerUrl": "https://www.avito.ru/brands/c341f3e1dbeea96b6e5b6c55ba92d015","sellerRating": 4.9,"sellerReviewsCount": 1916,"sellerClosedListings": null,"sellerBadges": ["Надёжный продавец"],"extraInfo": null,"badges": ["Рыночная цена"],"isPromoted": true,"isVerified": false,"hasDelivery": false,"deliveryText": null,"hasPhone": true,"isMarketplace": false,"isReserved": false,"hasVideo": false,"imagesCount": 10,"publishedAt": "2026-10-21T10:48:05.000Z","publishedAgo": "3 дня назад","query": "iphone","searchSort": "default","page": 1,"position": 1,"images": ["https://c90.img.avito.st/image/1/1.CUwLuraApaVFEF-uFaI_Hwgap6G5DaGluWrEobnhrl-0GaG_RRBfrr0.upj-0_-32c_bmVpYVgoSkwXfxYJ2GLDcrE2s6Lu7gGs","https://c60.img.avito.st/image/1/1.13SZTbaAe53X54GWu0aPKZrteZkr-n-dK50amSsWcGcm7n-H1-eBli8.UI795IgiVLXqY7kfrptZO8ojTp4nvpTUITNAbG0ClP8","…"],"description": "Смартфон Apple iPhone 18 Pro Max 256 GB, Silver / Смартфон Айфон 18 Про Макс, 256 ГБ, Серебристый, Новый.\n\nДругие варианты памяти есть в нал…"}
How much data can I get?
Measured on the Apify platform on 2026-10-24:
| Run | Listings saved | Time |
|---|---|---|
| Default example (empty keyword, 40 listings) | 40 | ~3 s |
Keyword iphone, 1,000 listings | 1,000 | 26 s |
| Two keywords in Saint Petersburg, 600 each | 1,200 | 35 s |
| Apartments in Moscow, 8,000 listings | 8,000 | 4 min 23 s |
| Apartments in Moscow, 10,000 listings | 10,000 | 5 min 54 s |
How many listings Avito holds for a search (same day): 1,058,720 cars, 632,809 listings for "iphone", 707,259 for "велосипед", 117,018 apartments in Moscow, 44,999 apartments in Kazan.
How deep one search goes:
- Default order — Avito lists at most 1,500 results per search. If you ask for more, the Actor switches to newest first automatically.
- Newest first / by price — up to 5,000 results per search (100 pages of 50).
- Beyond 5,000 — after the 5,000 newest listings the Actor continues in price bands (each band is a separate Avito search of at most 5,000), lowest price first, until it has what you asked for. A category with 100,000+ listings can therefore be collected in one run. Listings without a price ("price on request") cannot be reached through price bands.
- Paid promotions appear on several pages of the same search; the Actor removes those repeats, so each listing is saved — and charged — once per run.
Speed and reliability
Avito protects its search with a security check that many automated requests receive (HTTP 439 "Доступ ограничен: проверка безопасности"), and it rate-limits addresses that send many requests (HTTP 429). The Actor handles both:
- It completes Avito's automatic security check inside each session, the same way a browser does, and keeps the session for the next pages.
- When an address is rate-limited it moves on — first the direct connection, then Apify datacenter proxies, then residential proxies — so one blocked address never stops the run.
- Up to six pages are fetched at once and saved as they arrive.
- The run keeps an eye on its own timeout and stops cleanly a few seconds before it, with everything collected so far saved and a status message telling you what happened.
Every run writes a SUMMARY record to its key-value store: listings saved, pages read, pages that failed, Avito's total count per search, and network statistics.
What you pay
This Actor uses pay-per-result pricing — you pay only for listings saved to the dataset:
| Apify plan | Price per 1,000 listings |
|---|---|
| Free | $3.00 |
| Bronze | $2.70 |
| Silver | $2.40 |
| Gold / Platinum / Diamond | $2.10 |
A tiny start fee of $0.00005 per run also applies. Examples on the Free plan: 100 listings ≈ $0.30 · 1,000 listings ≈ $3 · 10,000 listings ≈ $30.
Maximum cost per run. Apify stops a run when it reaches the Maximum cost per run set in the run options. The Actor respects it: it saves listings up to that budget and finishes with a status message instead of being aborted. For a 10,000-listing run set at least $30 on the Free plan.
Integrations & API
Run the Actor and download results from your own code or tools.
cURL
curl -X POST "https://api.apify.com/v2/acts/logiover~avito-ru-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"searchQueries": ["iphone 15"], "locationId": "637640", "maxItemsPerQuery": 200, "maxResults": 200}'
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('logiover/avito-ru-scraper').call({categoryId: '24',locationId: '637640',sort: 'newest',maxItemsPerQuery: 1000,maxResults: 1000,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items.length, items[0].title, items[0].priceString);
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("logiover/avito-ru-scraper").call(run_input={"searchQueries": ["bmw x5"],"categoryId": "9","maxItemsPerQuery": 500,"maxResults": 500,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["title"], item["price"], item["locationName"], item["sellerName"])
No-code: connect the Actor to Make (Integromat), Zapier, n8n, Google Sheets, Airbyte, Slack or any webhook from the Integrations tab, or schedule it daily in Schedules. AI agents can call it through the Apify MCP server.
Limitations — what this Actor does not do
- Phone numbers are not included — Avito shows them only to logged-in users.
hasPhonetells you whether the seller accepts calls. - Private sellers' names are not shown in Avito search results;
sellerName, rating and badges are filled for shops, dealers, agencies and employers (and for private sellers who have reviews). - Full descriptions and listing-page details (all characteristics, view counts) are not opened; the Actor collects the search result cards, which already carry the fields listed above. Descriptions are the card text (up to about 250 characters).
- One search returns at most 1,500 results in Avito's default order and 5,000 in the other orders; larger volumes come from price bands, which cannot include listings without a price.
- Only public listings are collected; nothing behind a login.
FAQ
How do I scrape Avito.ru without an API?
Avito has no public listings API. This Actor reads the same search data the avito.ru website loads and returns it as structured rows — add a keyword or pick a category and city, click Start, and export the results.
Is there an official Avito API for listings?
Avito offers APIs for its own sellers to manage their ads, not for searching other people's listings. For market data, a scraper like this is the usual approach.
Can I scrape Avito by city?
Yes. Pick a city from the Location list (Moscow, Saint Petersburg, Novosibirsk, Yekaterinburg, Kazan and dozens more) or type any place in Location by name, e.g. Тверь.
Does the keyword search really return matching listings?
Yes — the Actor uses Avito's search endpoint, so a search behaves exactly like the search box on avito.ru, including Avito's own spelling handling and category detection.
How many listings can I get per run?
As many as you ask for: up to 5,000 per search directly, and more through automatic price bands. We measured 10,000 listings in under 6 minutes.
Do I need Russian proxies?
No. The Actor works out of the box. It connects directly and switches to Apify Proxy automatically when Avito rate-limits an address. Advanced users can still choose their own proxy in the input.
Why are some fields empty?
Avito shows different information per category: coordinates and metro on real estate, mileage on cars, salary details on jobs, ratings only for sellers with reviews. Fields that are not on the card are null.
Can I get sellers' phone numbers?
No — Avito only reveals numbers to logged-in users, and this Actor does not log in. You get the seller name, type, rating, badges and profile link.
Can I monitor new listings every day?
Yes. Set sort to newest, schedule the Actor (Schedules → daily or hourly) and export to Google Sheets or a webhook. publishedAt tells you when each ad appeared.
How do I get only private sellers or only companies?
Collect the search and filter on sellerType (e.g. Компания, Автодилер, Агентство) in your spreadsheet, or use the Sellers view. Listings with an empty sellerName and sellerType are usually private sellers — Avito does not show private names in search results.
What does a run cost?
$3.00 per 1,000 listings on the Free plan and down to $2.10 on higher plans — see What you pay.
What happens if Avito blocks the run?
The Actor completes Avito's security checks and rotates routes. If Avito still refuses every request, the run fails with a clear message instead of returning an empty "successful" dataset — and you pay nothing for listings that were not saved.
Can I export Avito data to Excel?
Yes — open the Output tab and download Excel (XLSX), CSV, JSON, XML or HTML. Russian text is UTF-8 encoded.
Which categories are supported?
All of them — transport, real estate, jobs, services, personal items, electronics, home and garden, hobbies, animals and business. Use the category list or any Avito category ID.
Can I scrape listing details or reviews?
This Actor focuses on search results at scale. Listing pages and reviews are not opened.
Is it legal to scrape Avito?
This Actor collects only publicly available listing data that anyone can see on avito.ru without logging in. You are responsible for how you use the data: respect Avito's terms, privacy law (e.g. Russia's Federal Law No. 152-FZ and the GDPR where applicable) and do not use personal data for spam. If you are unsure, consult a lawyer.
Changelog
See the Changelog tab for the full history. Highlights:
- 2026-10-24 — Rebuilt on Avito's search endpoint: keyword search now returns real search results, 50 per page with Avito's counts; sort order and price range; city by name; 56 fields including seller, rating, badges, address, coordinates and metro; automatic handling of Avito's security check; up to 5,000 per search and price bands beyond; corrected category and city lists.
Support
Questions, a missing field or a category that behaves oddly? Open an issue on the Issues tab — we reply within 24 hours and ship fixes fast. Feature requests are welcome.