SS.ge Georgia Real Estate Listings avatar

SS.ge Georgia Real Estate Listings

Pricing

from $1.70 / 1,000 listing founds

Go to Apify Store
SS.ge Georgia Real Estate Listings

SS.ge Georgia Real Estate Listings

Pull live real-estate listings straight from SS.ge — Georgia's biggest real-estate classifieds portal — by city, with price in whichever currency (GEL or USD) the seller actually set. No login, no browser, no proxies.

Pricing

from $1.70 / 1,000 listing founds

Rating

0.0

(0)

Developer

Tim Zinin

Tim Zinin

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Categories

Share

Pull live real-estate listings straight from SS.ge — Georgia's biggest real-estate classifieds portal — filtered by city and deal type. Price comes back in whichever currency (GEL or USD) the seller actually priced the listing in — no forced conversion. No login, no API key, no browser needed on your side.

What you get

  • Title, price with its real currency, rooms, floor area, district/street, a short description, preview photos and the direct listing URL for every ad found.
  • Filter by deal type — sale, rent, or the portal's own unfiltered mix — and any SS.ge city (Tbilisi, Batumi, Kutaisi and more).
  • Property type included per listing — apartment, private house, commercial space or land.
  • Runs on Apify: schedule it, monitor it, call it from the API, export to JSON/CSV/Excel or push straight into your own pipeline.

How to run it

  1. Click Try for free — no card needed on the free plan.
  2. Set City ID (defaults to 95 = Tbilisi) and, optionally, Deal type (any, sale or rent).
  3. Hit Start and pull the results from the dataset (UI, API or webhook).

Pricing

Pay-per-event: $0.005 per run start + $0.002 per result. No monthly seat, no minimum. 100 listings found cost about $0.21 (the one-time start fee plus 100 result rows). Rows where the source returned nothing (an unrecognized city, a filter combination with zero matching listings, or a request that failed) are returned for transparency but are never charged for.

Input

FieldRequiredWhat it does
city_idnoSS.ge numeric city ID (default 95 = Tbilisi). Known IDs: 95 Tbilisi, 96 Batumi, 97 Kutaisi, 98 Rustavi, 99 Gori, 100 Zugdidi, 101 Poti, 102 Telavi, 19 Mtskheta. An unrecognized ID returns zero listings, not an error.
deal_typenoany (default, the portal's own unfiltered mix), sale or rent.
max_itemsnoTotal row cap for this run (default 100).
max_pagesnoHow many result pages to walk, 16 listings per page (default 3).
{
"city_id": 95,
"deal_type": "any",
"max_items": 5,
"max_pages": 1
}

Output

Real rows from a live Apify run (2026-07-30):

{
"city_id": 95,
"deal_type": "sale",
"found": true,
"url": "https://home.ss.ge/en/real-estate/4-room-Flat-For-Sale-Saburtalo-36307831",
"title": "4 room Flat For Sale. Saburtalo",
"price": 450000,
"currency": "USD",
"property_type": "apartment",
"rooms": 3,
"area_sqm": 166,
"location": "Tbilisi, Vake-Saburtalo, Saburtalo, m. asatiani st. 10",
"lat": null,
"lng": null,
"posted_date": "2026-07-30T18:15:13.596342+04:00",
"description": "An exclusive apartment for sale in the prestigious Tbilisi Gardens residential complex (Block 3).\n\n✅ Area: 165.7 m².\n\n✅ Floor: 15th\n\n✅ Layout: Spacious living room, 3 bedrooms, 2 bathrooms.\n\n✅ Highlights: Sunny side with panoramic views of Vazha-Pshavela. This is a unique opportunity, as this specific floor plan is no longer available directly from the developer.\n\n✅ Condition: Green frame.\n\n✅ Terms: Direct sale from the owner. Offered at an excellent price for this complex.\n\n✅ Full documentatio…",
"images": [
"https://static.ss.ge/20260730/6_9a3f65e2-511e-432e-9025-ddfdfed3432e_Thumb.jpg",
"https://static.ss.ge/20260730/19_e4eb61dc-fa92-4840-a977-c495a7279a45_Thumb.jpg",
"https://static.ss.ge/20260730/12_08c3c98b-12fe-43c3-9514-ce479e5dcb87_Thumb.jpg",
"https://static.ss.ge/20260730/16_ae46ef94-355f-42a9-abdf-31ca7d6cf935_Thumb.jpg"
],
"source_portal": "ss-ge",
"scraped_at": "2026-07-30T14:28:41.605Z",
"partial": true,
"partial_reason": "stopped after 2 page(s), 30 item(s) collected — reached this run's own max_pages/max_items limit before the source confirmed (via confirmedEnd) that there is nothing more; there may be additional matching listings beyond what was collected"
}
{
"city_id": 95,
"deal_type": "rent",
"found": true,
"url": "https://home.ss.ge/en/real-estate/1-room-Flat-Daily-rent-Gldani-7893960",
"title": "1 room Flat Daily rent. Gldani",
"price": 30,
"currency": "GEL",
"property_type": "apartment",
"rooms": 1,
"area_sqm": 30,
"location": "Tbilisi, Gldani-Nadzaladevi, Gldani, A Microdistrict - Gldani 777",
"lat": null,
"lng": null,
"posted_date": "2023-10-09T13:29:06.11419+04:00",
"description": " Apartment for daily rent in Gldani, 2-3 minutes walk from Akhmeteli metro station (near Akhmeteli theater). In a newly built building, newly renovated, well-furnished, clean and cozy apartment, equipped with all necessary things and hygiene products. Daily price is negotiable.",
"images": [
"https://static.ss.ge/20241231/1_35458293-43db-4763-98cf-a29db14dfdd8_Thumb.jpg",
"https://static.ss.ge/20241231/2_7155f85a-9105-4917-afc9-66b486362d43_Thumb.jpg",
"https://static.ss.ge/20241231/18_fc20a5e3-7708-4452-9e7c-ef302b77a7ed_Thumb.jpg",
"https://static.ss.ge/20241231/11_be9abd34-254a-41d6-8c59-5dd5974b39b2_Thumb.jpg"
],
"source_portal": "ss-ge",
"scraped_at": "2026-07-30T11:03:13.249Z",
"partial": false,
"partial_reason": null
}
FieldMeaning
foundtrue for a real listing row, false for a not-found/error row.
deal_typeOn a found row: the listing's OWN actual deal type (sale or rent) — not an echo of your input filter. Useful when you ran deal_type: "any" and need to know which is which. On a not-found/error row: echoes your input filter instead, since there is no listing to report on.
price / currencyThe listing's price in whichever currency the seller set (GEL or USD) — not converted.
property_typeapartment, house, commercial or land.
roomsBedroom count; 0 for studios/land, null when not stated.
area_sqmFloor (or plot) area in square meters.
locationDistrict, neighborhood and street as shown on the listing.
posted_dateFull ISO-8601 creation timestamp as SS.ge stores it.
imagesPreview photos shown on the listing card (not the full detail-page gallery).
lat / lngNot available on list pages — always null.
partialtrue when this run stopped (hit max_pages/max_items, or a page failed mid-walk) before the source confirmed there was nothing more to page through; false when the source itself confirmed the end of results.
partial_reasonPlain-English reason when partial is true; null otherwise.

A not-found row looks like (real output, live run 01.08.2026):

{
"city_id": 999999,
"deal_type": "any",
"found": false,
"partial": true,
"partial_reason": "page 1 returned 0 rows with no independent confirmation that the source actually has zero matches — could be a genuine empty result, or an unrecognized/broken page shape",
"note": "ss.ge did not confirm zero listings for this city_id/deal_type combination — page 1 returned 0 rows with no independent confirmation that the source actually has zero matches — could be a genuine empty result, or an unrecognized/broken page shape",
"scraped_at": "2026-08-01T05:12:53.758Z"
}

API

Start a run with a bearer token and explicit JSON input:

curl -sS -X POST 'https://api.apify.com/v2/acts/zinin~ss-ge-tbilisi/runs?waitForFinish=60' \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H 'Content-Type: application/json' \
--data '{"city_id":95,"deal_type":"any","max_items":5,"max_pages":1}'

Read Dataset rows using the returned defaultDatasetId:

curl -sS "https://api.apify.com/v2/datasets/$DEFAULT_DATASET_ID/items?clean=true&format=json" \
-H "Authorization: Bearer $APIFY_TOKEN"

MCP

For an Apify MCP client exposing the standard call-actor tool, send this exact payload:

{
"name": "call-actor",
"arguments": {
"actor": "zinin/ss-ge-tbilisi",
"input": {
"city_id": 95,
"deal_type": "any",
"max_items": 5,
"max_pages": 1
}
}
}

Other tools we built

Adjacent relocation-and-real-estate signals for the same Tbilisi/Georgia buyer or renter.

ActorUse it when
Krisha.kz Kazakhstan Real Estate ListingsCompare Tbilisi against Kazakhstan's own real-estate market for the same relocation-and-investment corridor.
Jobs.ge Georgia Jobs ScraperSomeone apartment-hunting in Tbilisi is usually job-hunting too — Jobs.ge is Georgia's equivalent listings site for that half of relocation research.
Emlakjet Istanbul Real Estate ListingsAdd Istanbul to the same comparison — another regional market with steady CIS/relocation inflow.
Structured Data ExtractorNeed the full description, phone number (if published) or exact coordinates? This Actor's own FAQ says list-page data doesn't carry those — run it on each row's url.

FAQ / Limitations

Does this need an SS.ge account or API key? No — it reads the same public search pages a visitor sees, no login.

Why is the price sometimes in GEL and sometimes in USD? Georgian real estate is priced in both currencies depending on the seller — this Actor reports the currency the seller actually set (the round, un-converted figure), not a forced single currency.

What this is NOT. This does not fetch the full photo gallery, exact coordinates, or the seller's phone number from the listing detail page — only what's shown on the search-results list. It does not guarantee every listing on SS.ge is returned; pagination stops at max_pages / max_items.

Found a bug or need a custom variant (a different country's classifieds site, extra fields)? Open an issue on the Actor page.

Machine use

The Actor is callable through the Apify API, SDK, and Apify MCP server. The input and Dataset row are the machine-facing contract; deal_type on a found row is the listing's own actual value, not an echo of your filter — an agent that ran deal_type: "any" must read the row's deal_type per item to tell sale from rent, not assume the input value.