Krisha.kz Scraper - Kazakhstan Property Listings & Prices
Pricing
from $1.32 / 1,000 property listings
Krisha.kz Scraper - Kazakhstan Property Listings & Prices
Krisha.kz property data: prices in tenge, rooms, area, floor, address, seller type and photos for Almaty, Astana and all Kazakhstan. JSON/CSV/Excel.
Pricing
from $1.32 / 1,000 property listings
Rating
0.0
(0)
Developer
SIÁN OÜ
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
11 days ago
Last modified
Categories
Share
Krisha.kz Scraper - Kazakhstan Property Listings & Prices 🚀
🎉 Kazakhstan's largest property portal as a spreadsheet: 465,000 live krisha.kz adverts, with seller type on every row and building facts on most apartment rows
For analysts, agencies, developers and investors tracking Almaty, Astana, Shymkent and the regions
🔎 What is the Krisha.kz Scraper — and when should you use it?
The Krisha.kz Scraper turns public property adverts from krisha.kz, Kazakhstan's largest property portal into clean, structured rows you can filter, export and feed straight into a spreadsheet, database or AI agent. No account, no portal API key, no browser automation to maintain.
Use it when you need: Kazakh sale and rental adverts as rows. Each row carries the asking price or monthly rent in tenge, room count, floor area, floor and building height, plot size in sotka, city, district and street. It also names the seller type: owner, specialist, company, krisha.kz agent or developer, with the residential complex for new builds. Promotion badges, the mortgage flag, wall type, year built, ceiling height, condition and the lead photo come too. Switch on full details and each row adds GPS coordinates, the complete description, every photo, kitchen area and the date the advert was first published.
Use something else when: the property is not in Kazakhstan, or you need adverts that are only on OLX. Use OLX Property Scraper for olx.kz property adverts, mostly private sellers. Use Cian Scraper for Russia's largest property portal. Use Kufar.by Scraper for Belarus property adverts. This actor covers every property section krisha.kz publishes: apartments, houses and dachas, land plots, commercial premises, garages and parking, industrial bases, ready businesses and property abroad for sale, and apartments, houses, rooms, commercial premises, garages and industrial bases for rent. Phone numbers sit behind krisha.kz's own click-to-call and are never read. The site shows only current prices, so there is no price history, and it stops any one search at page 1,000 (about 20,000 adverts).
🤖 Use with AI agents
Already connected to the Apify MCP server? Just ask for this Actor by name: sian.agency/krisha-property-scraper
Your agent can pay for its own runs. This Actor is eligible for agentic payments, so an agent can discover it, run it and settle the bill over x402 (USDC on Base) or Skyfire — without an Apify account or API token of its own. Billing is the same either way: per successful row, never for errors.
Otherwise copy this prompt into Claude, ChatGPT, Cursor or any MCP-enabled assistant:
I want property listings and asking prices from krisha.kz using the Apify Actor `sian.agency/krisha-property-scraper`.Use it when I need: Kazakh sale and rental adverts as rows. Each row carries the asking price or monthly rent in tenge, room count, floor area, floor and building height, plot size in sotka, city, district and street. It also names the seller type: owner, specialist, company, krisha.kz agent or developer, with the residential complex for new builds. Promotion badges, the mortgage flag, wall type, year built, ceiling height, condition and the lead photo come too. Switch on full details and each row adds GPS coordinates, the complete description, every photo, kitchen area and the date the advert was first published.Don't use it when: the property is not in Kazakhstan, or you need adverts that are only on OLX — use olx-property-scraper or cian-property-scraper or kufar-property-scraper instead.How to call it: set `dealType` to `sale` or `rent` and `propertyType` to one of `apartments`, `houses`, `land`, `commercial`, `garages`, `industrial`, `business`, `rooms` or `abroad`. Set `location` to `kazakhstan`, a city such as `almaty`, `astana` or `shymkent`, or a region such as `almatinskaja-oblast`. Narrow with `minPrice`/`maxPrice` in tenge, `rooms` (1-5, 5 = five or more), `minArea`/`maxArea` in m², `minPlotSotka`/`maxPlotSotka`, `ownersOnly` and `withPhotosOnly`. A filter the chosen section does not support stops the run before any advert is billed. `sortBy` takes `newest`, `cheapest` or `most-expensive`, and `maxResults` caps the rows. `includeDetails` opens each advert for GPS, the complete text and every photo, for an extra charge per advert read. To reuse a search built on the site, paste its address into `searchUrls`.Start with this input:{"dealType": "sale","propertyType": "apartments","location": "almaty","rooms": ["2"],"maxResults": 200}Ask me which city or region to cover, whether they want sale or rental adverts and of which property type, and whether GPS and the full description are worth the extra per-advert charge, then run the Actor and summarise the results as a table.
Things you can ask your agent for:
- Pull two-room flats for sale in Almaty under 40 million tenge and rank the districts by median price per square metre.
- Find owner-listed apartments for rent in Astana posted this week, with GPS points for each.
- List the developers advertising new builds in Shymkent and the starting price of each residential complex.
Machine-readable API, MCP config and OpenAPI definition for this Actor are published at apify.com/sian.agency/krisha-property-scraper.md.
📋 Overview
Krisha.kz (крыша кз) is where Kazakhstan goes to find a flat, a house or an office. It carries about 465,000 live adverts, and 223,000 of them are apartments for sale. This Actor turns any krisha.kz search into clean rows: price in tenge, rooms, floor area, floor, district, seller type and the building facts the site prints in each description.
What you get:
- ✅ Every section krisha.kz publishes: apartments, houses and dachas, land, commercial premises, garages, industrial bases, ready businesses and property abroad for sale, plus six sections for rent.
- ⚡ 20 adverts per page, read straight from the search results. A 1,000-row market extract is 50 pages.
- 🎯 Up to 39 fields per advert from the search alone, and 48 with full details switched on.
- 💰 $1.50 per 1,000 adverts on a paid Apify plan, plus $0.005 per run start. Promoted adverts that break your price, rooms, area or plot filters are dropped before billing.
- 💎 Building facts as columns: wall type, year built, ceiling height, condition and residential complex, split out of the description text.
- ✨ NEW: optional full details with GPS coordinates, every photo, the first-published date and days on market.
✨ Features
- 🏢 14 section and deal combinations: eight sale sections and six rent sections. Each row is labelled with its deal type and property type.
- 📍 52 locations: all of Kazakhstan, 34 cities from Almaty and Astana to Baikonur, and all 17 regions.
- 💵 Tenge prices parsed properly: the number, the text as shown, a flag for a developer's "from" price, the rent period and the price per m².
- 👤 Seller type on every row: owner, specialist, company, krisha.kz agent or developer. New builds also carry the complex and developer name.
- 🔥 Promotion badges: hot, raised to top, urgent, the badge text, and whether a mortgage is offered.
- 🧱 Building facts: panel, brick or monolithic walls, year built, ceiling height, condition and residential complex.
- 🎚️ Filters krisha.kz applies itself: price, rooms, floor area, plot size in sotka, owners only, with photos only and three sort orders.
- 🛑 No quietly unfiltered results: if a section does not support a filter, the run stops before any charge and says why.
- 🌐 Paste your own search: build it on krisha.kz, copy the address bar, and its filters come along.
- 📄 Full details on demand: GPS, complete description, every photo, kitchen area and the full parameter list.
🎬 Quick Start
Pick a deal type, a property type and a location. Add filters if you want a narrower slice. Press Start, then download the rows as JSON, CSV or Excel.
curl -X POST 'https://api.apify.com/v2/acts/sian.agency~krisha-property-scraper/runs?token=YOUR_TOKEN' \-H 'Content-Type: application/json' \-d '{"dealType": "sale", "propertyType": "apartments", "location": "almaty", "maxResults": 100}'
🚀 Getting Started (3 Simple Steps)
Step 1: Choose what to search
Pick For sale or For rent, then a property type such as Apartments, Houses and dachas or Commercial premises.
Step 2: Choose where
Pick a city, a region or all of Kazakhstan, and set how many adverts you want.
Step 3: Press Start
Filters are optional. The default run returns 100 Almaty apartments for sale, newest first (25 on a free Apify plan).
A default run takes about 15 seconds and gives you:
- A table of adverts with price in tenge, rooms, floor area, floor and district
- The seller type on every row, with the complex and developer for new builds
- Building age, wall type and condition, ready to group and chart
- A run report with the totals and exactly what you paid
📥 Input Configuration
| Field | Type | Required | Description |
|---|---|---|---|
| operation | string | No | search (Property Listings). The only operation, and the default. |
| dealType | string | No | sale or rent. Default sale. |
| propertyType | string | No | apartments, houses, land, commercial, garages, industrial, business, rooms or abroad. Default apartments. |
| location | string | No | kazakhstan, a city such as almaty, astana or shymkent, or a region such as almatinskaja-oblast. Default almaty. |
| maxResults | integer | No | Stop after this many adverts, 1 to 20,000. Default 100. |
| minPrice / maxPrice | integer | No | Price range in tenge. For rentals this is the monthly rent. Not available for property abroad. |
| rooms | array | No | Room counts "1" to "5" (5 means five or more). Apartments and houses. |
| minArea / maxArea | integer | No | Floor area in m². Apartments, houses, rooms, commercial premises and businesses. |
| minPlotSotka / maxPlotSotka | integer | No | Plot size in sotka (1 sotka = 100 m²). Houses, land and industrial bases. |
| ownersOnly | boolean | No | Keep only adverts posted by the owner. |
| withPhotosOnly | boolean | No | Skip adverts without photos. |
| sortBy | string | No | newest, cheapest or most-expensive. Default newest. |
| includeDetails | boolean | No | Open each advert's page for GPS, full text, all photos and every parameter. Billed per advert read. |
| searchUrls | array | No | krisha.kz search addresses to use instead of the form. |
Land plots, ready businesses and property abroad are sale-only, and rooms are rent-only. If you pick a pair krisha.kz does not publish, the run stops before any advert is billed (only the run-start fee applies).
Example: two- and three-room flats in Astana between 20 and 40 million tenge, owners only:
{"dealType": "sale","propertyType": "apartments","location": "astana","minPrice": 20000000,"maxPrice": 40000000,"rooms": ["2", "3"],"ownersOnly": true,"sortBy": "cheapest","maxResults": 500}
Example: reuse searches you built on krisha.kz:
{"searchUrls": [{ "url": "https://krisha.kz/prodazha/kvartiry/almaty/?das[live.rooms]=2" },{ "url": "https://krisha.kz/arenda/kvartiry/astana/" }],"maxResults": 1000}
maxResults is one budget for the whole run: the URLs are read in order, so a big first search can use it all before the second one starts.
📤 Output
Every advert is one flat row with up to 48 fields. Fields the advert does not have are left out of the row instead of being filled with nulls. Export as JSON, CSV, Excel or XML, or read the rows through the API.
| Field | Type | Description |
|---|---|---|
| listingId | integer | krisha.kz advert ID |
| url | string | Link to the advert |
| propertyTitle | string | The title line krisha.kz builds: rooms, area and floor |
| price | number | Asking price, or the rent for rentals, in tenge |
| priceText | string | The price exactly as the site shows it |
| priceIsFrom | boolean | True for a developer's "from" starting price |
| pricePeriod | string | month, day or hour for rentals, total for a commercial whole-unit price, empty for a plain sale price |
| pricePerSqm | number | Price per m² in tenge: the figure krisha.kz prints (for commercial rents, the monthly rent per m²), otherwise price ÷ area for a single sale price; empty for "from" prices and flat rents |
| rooms / areaSqm / plotSotka | number | Room count, floor area in m², plot size in sotka |
| floor / floorsTotal | integer | Floor, and the number of floors in the building |
| city / district / address | string | City, district and street as published |
| buildingType | string | panel, brick, monolithic, other or a rarer wall type |
| yearBuilt / ceilingHeightM / condition | mixed | Year built, ceiling height in metres, condition as written |
| residentialComplex / developer / complexUrl | string | New-build complex, its developer and its krisha.kz page |
| sellerType / sellerLabel | string | owner, specialist, company, krisha-agent or developer, plus the site's own label |
| isHot / isTop / isUrgent / badgeText | mixed | Promotion flags and the badge text |
| mortgageAvailable | boolean | The advert offers a mortgage |
| photoUrl / photoCount | mixed | Lead photo and number of photos |
| postedDate | string | Date posted, or last raised to the top |
| dealType / propertyType / searchUrl | string | Which search produced the row |
Added by full details (includeDetails): latitude, longitude, fullDescription, photoUrls, kitchenAreaSqm and detailParameters, which holds every parameter krisha.kz lists. You also get createdDate (first published), daysOnMarket and detailStatus, which reads ok, removed or unavailable.
Example row (Almaty apartment for sale):
{"listingId": 1014118238,"url": "https://krisha.kz/a/show/1014118238","propertyTitle": "3-комнатная квартира · 80.9 м² · 9/9 этаж","propertyKind": "3-комнатная квартира","rooms": 3,"areaSqm": 80.9,"floor": 9,"floorsTotal": 9,"price": 51000000,"priceText": "51 000 000 ₸","priceIsFrom": false,"pricePerSqm": 630408,"currency": "KZT","city": "Алматы","district": "Ауэзовский р-н","address": "мкр Аксай-2 — Елемесова","descriptionPreview": "панельный дом, 1984 г.п., состояние: требует ремонта, потолки 2м., санузел раздельный, …","buildingType": "panel","yearBuilt": 1984,"ceilingHeightM": 2,"condition": "требует ремонта","sellerType": "krisha-agent","sellerLabel": "Крыша Агент","isHot": true,"isTop": true,"isUrgent": false,"mortgageAvailable": false,"photoUrl": "https://krisha-photos.kcdn.online/webp/7d/7d8bc43d-248e-45e9-8691-d95cb986caf1/51-full.jpg","photoCount": 25,"postedDate": "2026-09-27","dealType": "sale","propertyType": "apartments","searchUrl": "https://krisha.kz/prodazha/kvartiry/almaty/","status": "success"}
Full-details fields for another Almaty flat (advert 1015089009):
{"latitude": 43.234608,"longitude": 76.82925,"kitchenAreaSqm": 11.5,"createdDate": "2026-08-24","daysOnMarket": 34,"detailParameters": {"flat.building": "панельный","house.year": "1989","flat.toilet": "2 с/у и более","flat.flooring": "ламинат","ceiling": "2.8 м"},"detailStatus": "ok"}
Each run also saves a report (report.html) next to the dataset. It shows the totals, any search that returned nothing, and an itemised statement of what the run cost.
💼 Use Cases & Examples
1. Almaty and Astana Price Tracking
Property analysts watching asking prices move, district by district.
Input: Apartments for sale in Almaty, two rooms, newest first, scheduled weekly Output: Price, price per m², district and building age for each new advert Use: Chart the median price per square metre by district without cleaning a single cell
2. Rental Yield Research
Investors working out where a flat pays for itself.
Input: The same city run twice, once for sale and once for rent
Output: Asking prices and monthly rents with rooms, area and district
Use: Compare gross yield by room count across Almaty, Astana or Shymkent
3. Agency and Developer Lead Lists
Proptech and mortgage sales teams building a prospect list.
Input: Any city and section, all sellers
Output: The seller type on every row, with the developer and complex for new builds
Use: Group developer rows by complex to see who is building where, or keep the owner rows for private sellers
4. New-Build Market Monitoring
Developers and their marketing agencies keeping an eye on the competition.
Input: Apartments or houses for sale in a city, newest first Output: Complex name, its krisha.kz page, the developer and the "from" price Use: Track which complexes are advertising and how their entry price shifts over the season
5. Commercial and Land Deal Sourcing
Brokers and buyers shortlisting sites before the first phone call.
Input: Commercial premises with a floor-area range, or land with a plot range in sotka Output: Total price, price per m², plot size, district and address Use: Build a shortlist across a whole region in one run
6. Owner-Direct Acquisition
Buy-to-let investors who want to reach private sellers first.
Input: ownersOnly switched on, a price ceiling and a room count
Output: Owner-posted adverts only, with the posted date
Use: Run it every morning and call the newest owners before an agency signs them
7. Housing Market Research and Journalism
Researchers and data journalists who need a dated snapshot of supply.
Input: One section across all of Kazakhstan, split by region Output: A repeatable table of adverts with building age, wall type and condition Use: Compare Soviet-era panel stock with new monolithic builds, city by city
🔗 Integration Examples
JavaScript/Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('sian.agency/krisha-property-scraper').call({dealType: 'sale',propertyType: 'apartments',location: 'almaty',rooms: ['2'],maxResults: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items[0].propertyTitle, items[0].price, items[0].district);
Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')run = client.actor('sian.agency/krisha-property-scraper').call(run_input={'dealType': 'rent','propertyType': 'apartments','location': 'astana','maxResults': 200,})for item in client.dataset(run['defaultDatasetId']).iterate_items():print(item['propertyTitle'], item.get('price'), item.get('pricePeriod'))
cURL
curl -X POST 'https://api.apify.com/v2/acts/sian.agency~krisha-property-scraper/runs?token=YOUR_TOKEN' \-H 'Content-Type: application/json' \-d '{"dealType": "sale", "propertyType": "commercial", "location": "almaty", "minArea": 40, "includeDetails": true, "maxResults": 50}'
Automation Workflows (N8N / Zapier / Make)
- Trigger: A schedule, for example every morning at 08:00 Almaty time
- HTTP Request: Call this Actor's API with your saved input, sorted newest first
- Process: Drop the
listingIdvalues you already have - Action: Append the new adverts to Google Sheets or a database, or post them to Slack or email
📊 Performance & Pricing
FREE Tier (Try It Now)
- 25 adverts per run, with every field and every filter
- No credit card required
- Enough to check the columns against your own spreadsheet before you commit
PAID Tier (Production Ready)
- Up to 20,000 adverts per run, from one search or several pasted ones
- 20 adverts per page, so a 1,000-row extract finishes in a minute or two
- Pay per event: no advert charge for an empty search or a failed row
| Event | Starter plan | Free plan |
|---|---|---|
| Run start | $0.005 | $0.02 |
| Property listing (per 1,000) | $1.50 | $6.00 |
| Full details, optional (per 1,000) | $5.00 | $20.00 |
Higher Apify plans pay less, down to $1.17 per 1,000 listings and $3.90 per 1,000 details. Full details are billed only when the advert page was actually read.
💰 $1.50 per 1,000 krisha.kz adverts, and seller type, promotion badges and building facts are included at that price.
❓ Frequently Asked Questions (FAQ)
Q: Do I need a krisha.kz account or any setup? A: No. Pick a deal type, a property type and a location and press Start. The listing rows need nothing else.
Q: Which cities and regions can I search? A: All of Kazakhstan, 34 cities from Almaty, Astana and Shymkent down to Baikonur and Kulsary, and all 17 regions. A region includes every town in it.
Q: How many adverts can one run return? A: krisha.kz shows at most 1,000 pages of 20 per search, so one search reaches about 20,000 adverts. Almaty apartments for sale alone hold about 42,600. Split a market that size by price range or rooms and run it in parts.
Q: What do full details add? A: GPS coordinates, the complete description, every photo, kitchen area, the date the advert was first published, days on market and krisha.kz's full parameter list. The Actor opens one extra page per advert and bills a Listing Details event only when that page was read.
Q: Can I get the seller's phone number? A: No. krisha.kz hides numbers behind its own click-to-call, and this Actor never reads them. You get the seller type and, for developers, the company name.
Q: Is there a price history?
A: krisha.kz shows the current price only. Schedule the same search daily or weekly and you build the history yourself, keyed on listingId.
Q: Are prices in tenge? A: Yes. Every row carries the number, the text as the site shows it, and whether it is a starting price, a monthly rent or a total.
Q: What does the posted date mean?
A: postedDate is the day the advert was posted or last paid to be raised to the top. The real first-publication date comes with full details, as createdDate.
Q: Can I reuse a search I built on the site?
A: Yes. Paste the address from your browser into Search URLs and its filters are kept, including ones the form does not offer. Tracking tags and a few keys krisha.kz asks automated visitors to avoid (such as raion and sub_cat) are dropped, and the run log names them.
Q: What output formats are available? A: JSON, CSV, Excel, XML and HTML, straight from the Apify dataset or through the API.
🐛 Troubleshooting
The run stopped before any charge with a filter message
- That filter does not exist for the section on krisha.kz. Rooms work for apartments and houses only, and plot size for houses, land and industrial bases.
- Clear the filter or pick another property type. No advert was billed; only the run-start fee applies.
The run returned fewer adverts than Max results
- On a free Apify plan every run stops at 25 adverts, and there is a daily run allowance that resets at 00:00 UTC.
- The search may simply have fewer matches. The log prints the total krisha.kz reports on page 1.
Some rows show detailStatus: unavailable
- That advert page could not be read during the run. The listing row is still delivered, with no detail charge.
- If many advert pages in a row cannot be read, the run switches full details off, keeps delivering listings and stops billing details.
A row shows detailStatus: removed
- The advert was taken down between the search and the detail read. Popular Almaty flats can go within hours.
A search URL was skipped
- It has to be a krisha.kz search page such as https://krisha.kz/prodazha/kvartiry/almaty/. Single adverts (/a/show/…) and other sites are skipped, and the log says which.
⚖️ Is it legal to scrape data?
Our actors are ethical and do not extract any private user data, such as email addresses, phone numbers or personal contact details. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.
However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.
You can also read Apify's blog post on the legality of web scraping.
Krisha.kz is a trademark of its owner. This actor is not affiliated with, endorsed by, or sponsored by Krisha.kz or Kolesa Group.
🤝 Support
Support
- For issues or questions, open an issue at https://apify.com/sian.agency/krisha-property-scraper/issues
- Check SIÁN Agency Store for more automation tools
- Need another market? OLX Property Scraper covers olx.kz and six more countries. For Russia there is Cian Scraper, and for Belarus Kufar.by Scraper
- 📧 apify@sian-agency.online
Built by SIÁN Agency | More Tools