Imot.bg Bulgaria Real Estate Scraper
Pricing
from $3.00 / 1,000 results
Imot.bg Bulgaria Real Estate Scraper
[💰 $3.0 / 1K] Extract Bulgarian real estate from imot.bg — apartments, houses, land & commercial, for sale or rent, with price, area, rooms, location, photos, descriptions & agency contacts. Search by city & type or paste imot.bg URLs.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
SolidCode
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Pull live property listings from imot.bg — Bulgaria's largest real-estate portal — with prices, area, room counts, neighborhoods, full photo sets, and direct agency phone numbers. Filter by city, sale or rent, and six property categories, or paste a saved imot.bg search straight from your browser. Built for real-estate investors, proptech platforms, and market analysts who need fresh, structured Bulgarian property data without copying listings off the site by hand.
Why This Scraper?
- Six property categories in one run — Apartments, Houses & Villas, Land & Plots, Commercial, Garages & Parking, or Any. Houses & Villas pulls villas, houses and floor-of-a-house listings; Commercial pulls offices, shops and business premises — each mapped to the right imot.bg section automatically.
- Room-count granularity from studio to 5+ — pick any mix of 1-room (studio), 2, 3, 4, and 5+ room apartments; results from every selected size are merged and de-duplicated by listing ID.
- Direct agency contacts — every detailed listing returns the agency or private-seller name plus a working phone number and profile link, with a private-seller flag so you can separate owners from brokers.
- City, region, and country-wide coverage — search Sofia, Plovdiv, Varna, Burgas, Ruse, Stara Zagora, Pleven and any other Bulgarian town, step up to oblast (region) level, or leave the city blank to sweep the whole country.
- EUR price filtering on sale and rent — set a minimum and maximum in euros (monthly rent for rentals); "price by request" listings are kept rather than silently dropped.
- Full Cyrillic fidelity — Bulgarian neighborhood, district, and description text comes back correctly decoded, not mangled into question marks.
- Construction details that drive valuation — detailed runs add construction type (brick, panel, EPK), heating, floor and total floors, and year built — the fields appraisers and investors actually price on.
- Up to 50,000 listings per run — automatic pagination walks every results page; set Max Results to 0 for an unlimited sweep guarded by a 50,000-row ceiling.
- Paste-a-search power mode — build any filtered search on imot.bg, copy the address bar, and the scraper reproduces it exactly, preserving filters the guided fields don't expose.
Use Cases
Market Research
- Track asking prices and price-per-square-meter across Sofia, Plovdiv, and Varna neighborhoods.
- Measure supply by property type and room count in a given oblast.
- Build time-series datasets by re-running a saved search on a schedule.
Investment Analysis
- Compare yields by filtering sale and rent listings in the same neighborhood.
- Screen land plots at the region level for development opportunities.
- Filter on construction type and year built to target renovation or new-build stock.
Lead Generation
- Collect agency names and direct phone numbers for outreach to active brokers.
- Separate private sellers from agencies using the private-seller flag.
- Build a contact list of listing agents in a target city.
Price Monitoring
- Set EUR price bands to watch a specific segment of the market.
- Detect new listings entering a price range over repeated runs.
- Benchmark price-per-square-meter against your own portfolio.
Portal & App Data
- Feed a property-comparison site or aggregator with structured imot.bg inventory.
- Enrich a CRM with photos, descriptions, and contact details per listing.
Getting Started
Apartments for sale in Sofia
{"city": "Sofia","listingType": "sale","propertyType": "apartment","maxResults": 100}
Two- and three-room rentals under €600 in Plovdiv
{"city": "Plovdiv","listingType": "rent","propertyType": "apartment","rooms": ["2", "3"],"priceMax": 600,"maxResults": 200}
Full details from a saved imot.bg search
{"startUrls": ["https://www.imot.bg/obiavi/prodazhbi/grad-varna/tristaen"],"includeDetails": true,"maxResults": 500}
Input Reference
Search
| Parameter | Type | Default | Description |
|---|---|---|---|
listingType | string | "sale" | For Sale or For Rent. Ignored when Start URLs are provided. |
propertyType | string | "any" | One of Any, Apartments, Houses & Villas, Land & Plots, Commercial, Garages & Parking. Ignored when Start URLs are provided. |
city | string | "Sofia" | City to search, e.g. Sofia, Plovdiv, Varna, Burgas, Ruse. Leave empty to search the whole country. |
Filters
| Parameter | Type | Default | Description |
|---|---|---|---|
priceMin | integer | none | Keep listings at or above this price in EUR (monthly rent for rentals). "By request" listings are kept. |
priceMax | integer | none | Keep listings at or below this price in EUR. "By request" listings are kept. |
rooms | array | [] | Apartment room counts to include: 1 room (studio), 2 rooms, 3 rooms, 4 rooms, 5+ rooms. Applies to apartments only; ignored for Houses, Land, Commercial, and Garages. |
Advanced & Output
| Parameter | Type | Default | Description |
|---|---|---|---|
startUrls | array | [] | Paste imot.bg search-result or individual listing URLs. Overrides the guided fields above. |
includeDetails | boolean | false | Open each listing page for the full description, complete photo set, construction type, heating, floor, year built, and contact details. |
maxResults | integer | 100 | Maximum listings to collect. Set 0 for unlimited (a 50,000-row ceiling still applies). |
Output
Each listing is one record. Search-card data is always present; the detail fields fill in when Include Full Listing Details is on.
{"listingId": "1n12345678","listingUrl": "https://www.imot.bg/obiava-1n12345678-tristaen-grad-sofiya","title": "Тристаен, Лозенец","listingType": "sale","propertyType": "apartment","price": 185000,"priceCurrency": "EUR","priceFormatted": "185 000 EUR","pricePerSqm": 2100,"area": 88,"rooms": "Тристаен","floor": "4","totalFloors": 6,"constructionType": "Тухла","heatingType": "ТЕЦ","yearBuilt": 2018,"city": "София","neighborhood": "Лозенец","description": "Просторен тристаен апартамент...","imageThumbnail": "https://imotstatic2.imot.bg/.../1.jpg","imageUrls": ["https://imotstatic2.imot.bg/.../1.jpg", "..."],"agencyName": "Address Real Estate","agencyPhone": "0888123456","agencyUrl": "https://www.imot.bg/.../agency","isPrivateSeller": false,"publishedDate": "2024-05-10","scrapedAt": "2024-05-12T08:30:00Z"}
Core Fields
| Field | Type | Description |
|---|---|---|
listingId | string | Stable imot.bg listing identifier (used for de-duplication). |
listingUrl | string | Direct link to the listing page. |
title | string | Listing headline. |
listingType | string | sale or rent. |
propertyType | string | Property category of the listing (apartment, house, land, commercial, garage), derived from the listing itself. |
rooms | string | Room description (e.g. Тристаен / 3-room). |
area | number | Floor area in square meters. |
scrapedAt | string | ISO 8601 timestamp of collection. |
Price
| Field | Type | Description |
|---|---|---|
price | number | Numeric price; null for "by request" listings. |
priceCurrency | string | EUR or BGN. |
priceFormatted | string | Price as shown on the site. |
pricePerSqm | number | Price per square meter when available. |
Location
| Field | Type | Description |
|---|---|---|
city | string | City name (Cyrillic). |
neighborhood | string | Neighborhood / quarter. |
district | string | District, when listed. |
address | string | Street address, when listed. |
Details (when enabled)
| Field | Type | Description |
|---|---|---|
floor | string | Floor of the unit. |
totalFloors | number | Total floors in the building. |
constructionType | string | Construction type (brick, panel, EPK). |
heatingType | string | Heating type. |
yearBuilt | number | Year the building was completed. |
description | string | Full listing description. |
imageThumbnail | string | Primary photo URL. |
imageUrls | array | All photo URLs for the listing. |
publishedDate | string | Date the listing was published. |
Contact (when enabled)
| Field | Type | Description |
|---|---|---|
agencyName | string | Agency or seller name. |
agencyPhone | string | Direct contact phone number. |
agencyUrl | string | Link to the agency or seller profile. |
isPrivateSeller | boolean | true for private owners, false for agencies. |
Tips for Best Results
- Land searches are region-level. imot.bg lists plots by oblast, not city — choose
Land & Plotsand the search automatically steps up to the surrounding region, so expect region-wide results. - Price filtering is in euros. Set
priceMin/priceMaxin EUR; for rentals these bound the monthly rent. Listings priced "by request" are always kept so you don't lose premium stock. - Room counts apply to apartments only. The
roomsfilter is ignored for Houses, Land, Commercial, and Garages — those searches return their full results regardless of room count, so usepropertyTypeto target them. - Paste a saved search for exact filters. Build the search on imot.bg with any filters you like, copy the address bar into
startUrls, and every filter is reproduced precisely — including ones the guided fields don't cover. - Turn on Include Full Listing Details for contacts and photos. Names, phone numbers, full galleries, and construction data only appear when detail mode is on; leave it off for fast, inexpensive price-and-area sweeps.
- Leave the city blank for a national view. An empty city searches all of Bulgaria — ideal for country-wide market snapshots.
- Set Max Results to 0 for a complete sweep. Pagination runs to the natural end of the results, capped at 50,000 rows to keep runs bounded.
Pricing
From $3.00 per 1,000 results — flat pay-per-result, undercutting comparable Bulgarian property scrapers. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows total cost at each discount tier.
| Results | No discount | Bronze | Silver | Gold |
|---|---|---|---|---|
| 100 | $0.36 | $0.34 | $0.32 | $0.30 |
| 1,000 | $3.60 | $3.40 | $3.20 | $3.00 |
| 10,000 | $36.00 | $34.00 | $32.00 | $30.00 |
| 100,000 | $360.00 | $340.00 | $320.00 | $300.00 |
A "result" is one listing record pushed to your dataset. No compute or time-based charges — you pay per result, plus a small fixed per-run start fee.
Integrations
Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:
- Zapier / Make / n8n — Workflow automation
- Google Sheets — Direct spreadsheet export
- Slack / Email — Notifications on new results
- Webhooks — Trigger custom APIs on run completion
- Apify API — Full programmatic access
Legal & Ethical Use
This scraper collects publicly available listing information from imot.bg. Use the data responsibly and in line with imot.bg's terms of service and applicable laws. Contact details are provided for legitimate business communication only — respect privacy regulations (including GDPR) and anti-spam rules when contacting agencies or sellers, and do not use the data for unsolicited bulk messaging. You are responsible for how you use the collected data.