Gumtree AU Scraper - Listings, Sellers & Reviews Scraper avatar

Gumtree AU Scraper - Listings, Sellers & Reviews Scraper

Pricing

from $1.10 / 1,000 listing results

Go to Apify Store
Gumtree AU Scraper - Listings, Sellers & Reviews Scraper

Gumtree AU Scraper - Listings, Sellers & Reviews Scraper

Scrape gumtree.com.au classifieds across every vertical: for-sale goods, motors, real estate, jobs and services. Get title, description, price, all photos, GPS coordinates, category attributes, and seller profile + aggregate rating. Search by category + location + keyword, or paste any Gumtree URL.

Pricing

from $1.10 / 1,000 listing results

Rating

0.0

(0)

Developer

Abot API

Abot API

Maintained by Community

Actor stats

1

Bookmarked

10

Total users

4

Monthly active users

7 days ago

Last modified

Share

Gumtree Australia Scraper: Listings, Prices and Seller Ratings

Gumtree Australia Scraper turns gumtree.com.au into structured classifieds data. Get listing details, prices, photos, category attributes and the seller's aggregate rating for every vertical Gumtree carries: for-sale goods, motors, real estate, jobs and services. Search by category, location and keyword, or paste any gumtree.com.au URL you already refined in your browser, then export to JSON, CSV or Excel, or pull the results straight into your app through the API.

Why This Scraper?

  • Two ways to find listings. Build a query from category, location and keyword, or paste a gumtree.com.au category-and-location search or listing URL directly.
  • Every vertical in one actor. Motors, real estate, jobs, services and for-sale goods, each carrying its own category-specific attributes flattened into one object.
  • Seller rating on every listing. The overall score, the number of ratings behind it and any trust badges, with a null value whenever Gumtree simply has not published one for that seller yet.
  • Optional detail enrichment. Turn on Fetch full listing detail to add the untruncated description, precise location (latitude, longitude, postcode, suburb, map address) and the seller's published phone number.
  • Attributable enrichment. Every enriched record carries a status field, so a listing with no location is always attributable to a specific outcome rather than looking like data that was simply never collected.
  • Tuned for Australia. Default connection settings are built around the fact that gumtree.com.au serves Australian visitors.
  • Pipe results into your apps. Send a summary of each listing straight into Notion, Linear or Airtable through MCP connectors, no separate integration to build.

Use Cases

  • Vehicle marketplaces and pricing tools: track make, model, price and mileage across Australian sellers, with a link to the vehicle history report where one exists.
  • Classifieds aggregators: mirror for-sale, real estate, jobs and services listings from Gumtree into your own search index.
  • Lead generation and CRM enrichment: capture seller name, rating and, with detail enrichment on, a published phone number for outreach, subject to your own obligations under Australian privacy law.
  • Property research: pull real estate listings by suburb, city or state with bedroom and bathroom attributes for rent and sale comparisons.
  • Market and pricing research: build price datasets for a category or keyword across regions and track how listings move over time.

Data You Get

Sample shape: values are illustrative placeholders, not from a live record.

FieldExample
id"1300000000"
url"https://www.gumtree.com.au/web/listing/cars-vans-utes/1300000000"
title / description"2016 Toyota HiLux SR5 Dual Cab" / "One owner, full service history..."
price / priceText / priceType32990 / "$32,990" / "FIXED"
currency"AUD"
minimumOfferPrice / previousPriceString30000 / "$34,990"
isFree / isNegotiable / isSwapTrade / isDriveAwayfalse / true / false / false
vertical"motors" (also "property", "jobs", "services", "for-sale")
categoryId / categoryName"9299" / "Cars, Vans & Utes"
location / locationArea / locationState"Parramatta" / "Western Sydney" / "NSW"
age"2 hours ago"
images / imageCountarray of photo URLs / 8
hasVideo / videosfalse / [] (video URLs are not currently extracted)
attributesflattened category fields, for example mileage, body type and transmission for cars, or bedrooms and bathrooms for property
carVin / carRecordReportUrl"MMSAAAAAAAA000000" / a vehicle history report link (motors only, when present)
isFeatured / isUrgent / isHighlighted / isPremium / isTopAdprominence flags set by the seller's ad package
numberOfViews / numberOfReplies / numberOfOffers340 / 12 / 3
sellerName / seller"Example Motors" / nested rating object, see below
isWanted / adTypefalse / "OFFER" (also "WANTED")
detailFetched / detailStatustrue / "enriched" (meaningful only when Fetch full listing detail is on)
fullDescriptionthe untruncated advert text (detail enrichment only)
latitude / longitude / postcode / suburb / mapAddressprecise geo (detail enrichment only)
scrapedAt"2026-07-04T00:00:00+00:00"

A record built from a search result carries the coarse locality (location / locationArea, where locationArea actually holds the postcode / locationState), the search snippet in description, and the flattened category attributes; a record built by pasting a single listing URL carries the listing page's own structured data instead, so categoryName, priceText, priceType, age and attributes are not populated for that record, and detailFetched, detailStatus, fullDescription, latitude, longitude, postcode, suburb and mapAddress only appear once detail is fetched (always for a pasted listing URL, or when Fetch full listing detail is on for a search result). When detail is fetched, description is replaced with the full listing text, matching fullDescription. vertical is always "for-sale" regardless of category, and every is* flag plus hasVideo is always false; none of these are meaningfully populated by this actor. The seller object always carries name, type ("dealer" when Gumtree flags the poster as a dealer, otherwise null, there is no separate "private" value), rating, reviewCount and ratingBadges; phone, phoneExists and phoneVerified are filled only when Fetch full listing detail is on. Gumtree publishes only an aggregate seller rating, an overall score, the number of ratings behind it and any trust badges, never the individual buyer reviews or a star-by-star breakdown, so reviews and ratingDistribution are always null. Business and service ads may also carry a website field with the seller's linked site.

How to Use

  1. Pick a Search mode: search (build a query from category, location and keyword) or url (paste one or more gumtree.com.au URLs).
  2. For search mode, choose a category, a location and an optional keyword, then refine with price, sort order and radius. For URL mode, paste search-result or listing URLs; the category, location, page, price range and sort order already in the URL are respected. Paste a category-and-location URL rather than a keyword or attribute-filter URL, since those parts of a URL are not read back out.
  3. Set Max listings and Max result pages per search to control the size and cost of the run, and switch on Fetch full listing detail if you need the full description, precise location and seller phone.
  4. Click Start, then download the dataset as JSON, CSV or Excel, or read it through the API.

Search for cars in a price range:

{
"mode": "search",
"category": "cars-vehicles",
"location": "Sydney",
"keywords": "toyota hilux",
"sortBy": "price_asc",
"minPrice": 10000,
"maxPrice": 40000,
"maxItems": 100,
"maxPages": 5
}

Browse a whole category across a state:

{
"mode": "search",
"category": "real-estate",
"location": "NSW",
"maxItems": 50
}

Paste a gumtree.com.au search URL:

{
"mode": "url",
"urls": [
"https://www.gumtree.com.au/s-cars-vans-utes/sydney/c18320l3003435"
],
"maxItems": 200,
"maxPages": 10
}

Paste a single listing URL with full detail enrichment:

{
"mode": "url",
"urls": [
"https://www.gumtree.com.au/s-ad/parramatta/cars-vans-utes/2016-toyota-hilux-sr5-dual-cab/1300000000"
],
"fetchDetails": true
}

Run it from your code

Python:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("abotapi/gumtree-au-scraper").call(run_input={
"mode": "search",
"category": "cars-vehicles",
"location": "Sydney",
"maxItems": 50,
})
for listing in client.dataset(run["defaultDatasetId"]).iterate_items():
print(listing["title"], listing["priceText"])

JavaScript:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('abotapi/gumtree-au-scraper').call({
mode: 'search',
category: 'cars-vehicles',
location: 'Sydney',
maxItems: 50,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Or connect it to Make, Zapier, n8n, Google Sheets or webhooks from the Integrations tab.

Send results into your apps (MCP connectors)

Optionally pipe the scraped listings into the apps you already use, via Model Context Protocol (MCP) connectors. This is an extra delivery step after the scrape: the Apify dataset is never changed.

What gets written to the connector: a condensed, human-readable summary of each listing, not the full JSON. Each item becomes one entry with a title and its key fields flattened to plain text. The complete record always stays in the Apify dataset.

  1. Authorize a connector once under Apify → Settings → Integrations (Notion, Linear, Airtable, or Apify).
  2. Select it in the "Pipe results into your apps" input field. (If the picker is empty, you haven't authorized a connector yet.)
  3. For Notion, also set notionParentPageUrl to the page where items should be created.

The connection is mediated by Apify's MCP proxy, so this actor never sees your third-party credentials. Leave the field empty to skip.

Input Parameters

ParameterTypeDefaultDescription
modestringsearchsearch (build a query) or url (paste gumtree.com.au URLs).
urlsarraynone (prefill: one example search URL)gumtree.com.au search or listing URLs (url mode).
categorystringallTop-level vertical to search: all categories, cars and vehicles, real estate, jobs, services, and more (search mode).
locationstringnone (prefill: Sydney)Suburb, city, region or state (search mode). Empty searches all of Australia.
keywordsstringnoneFree-text keyword (search mode). Empty browses the whole category.
adTypestringnoneRetired hidden field, kept only so saved Task inputs keep loading; the value is not read and has no effect.
sortBystringnoneSort order: best match, most recent, price, or (for motors) mileage and year.
minPriceintegernoneOnly return listings priced at or above this amount (AUD).
maxPriceintegernoneOnly return listings priced at or below this amount (AUD).
radiusintegernoneExpand the search around the chosen location by this many kilometres.
fetchDetailsbooleanfalseAlso fetch each listing's page for the full description, precise location and seller phone.
maxItemsinteger100Stop after this many listings across the whole run (0 = no limit, bounded by Max pages).
maxPagesinteger5How many result pages to walk forward per search (24 listings per page).
proxyobjectApify Residential proxy, country AUConnection settings.
mcpConnectorsarraynoneOptional: send a summary of each listing to apps you authorized under Integrations.
notionParentPageUrlstringnoneNotion connector only: page under which items are created.
maxNotifyListingsinteger50Cap on items written to each connector per run. Does not affect the dataset.

Output Example

Sample shape: values are illustrative placeholders, not from a live record.

{
"id": "1300000000",
"url": "https://www.gumtree.com.au/web/listing/cars-vans-utes/1300000000",
"title": "2016 Toyota HiLux SR5 Dual Cab",
"description": "One owner, full service history, tow bar and canopy included. Logbooks available, always garaged.",
"price": 32990,
"priceText": "$32,990",
"priceType": "FIXED",
"currency": "AUD",
"vertical": "for-sale",
"categoryId": "9299",
"categoryName": "Cars, Vans & Utes",
"location": "Parramatta",
"locationArea": "Western Sydney",
"locationState": "NSW",
"age": "2 hours ago",
"images": [
"https://images.gumtree.com.au/image/private/t_$_35/move/aaaaaaaa-1111-2222-3333-444444444444"
],
"imageCount": 8,
"attributes": {
"carmileageinkms": "98000 km",
"carbodytype": "Ute",
"cartransmission": "Auto"
},
"carVin": "MMSAAAAAAAA000000",
"sellerName": "Example Motors",
"seller": {
"name": "Example Motors",
"type": "dealer",
"rating": 4.6,
"reviewCount": 38,
"ratingBadges": ["ID_VERIFIED"],
"ratingDistribution": null,
"reviews": null,
"phone": "+61491570006",
"phoneExists": true,
"phoneVerified": false
},
"detailFetched": true,
"detailStatus": "enriched",
"fullDescription": "One owner, full service history, tow bar and canopy included. Logbooks available, always garaged.",
"latitude": -33.8150,
"longitude": 151.0000,
"postcode": "2150",
"suburb": "Parramatta",
"state": "NSW",
"mapAddress": "Parramatta NSW 2150",
"numberOfViews": 340,
"numberOfReplies": 12,
"numberOfOffers": 3,
"isFeatured": true,
"scrapedAt": "2026-07-04T00:00:00+00:00"
}

Plan Requirement

The default proxy setting, Apify Residential proxy with country set to Australia, works out of the box: gumtree.com.au is built and tested around that configuration, since the site serves content to Australian visitors. No other plan-specific configuration is required.

FAQ

How much does it cost?

You pay per listing returned in the dataset. The Pricing tab shows the current rates, including whether detail enrichment carries its own charge. Use Max listings to cap the cost of any run.

This actor collects only publicly available classified listings and their aggregate seller rating. You are responsible for how you use the data: follow Gumtree's terms and the laws that apply to you, including Australian privacy law if you collect and use the seller phone numbers that detail enrichment exposes.

Can I run it on a schedule to catch only new listings?

You can schedule the actor from the Schedules tab, but this actor does not track state between runs: each scheduled run returns every listing that matches your filters again, not only the ones that appeared since the last run. Sort by "Most recent" and de-duplicate on your side using the id field if you need only new listings.

Why do some sellers show no rating?

Gumtree publishes only an aggregate rating, an overall score and how many ratings back it, never the individual buyer reviews or a star-by-star breakdown, so reviews and ratingDistribution are always null. Many private sellers simply have no rating yet, in which case rating is null and reviewCount is 0.

Why did my run fail instead of returning an empty dataset?

A run fails outright only when Fetch full listing detail is on and none of the listing pages could be read, whether refused outright or returned with no usable detail data; turn the option off to keep collecting search-only fields, or retry later. In URL mode, a pasted listing URL that cannot be loaded at all is skipped rather than failing the run, so that run instead finishes successfully with no listings found. If the initial connection to gumtree.com.au cannot be established, or no listings match your filters, the run finishes successfully with an explanatory status message and zero items instead of failing.

Can I use it with AI agents or MCP?

Yes. Call it from any Apify integration or MCP client, and use the connector field to push a summary of each listing into Notion, Linear or Airtable.

🔗 Want more Gumtree data?

Pair this actor with these related scrapers from the same team:

🏷️ Gumtree UK
Scrape gumtree.com classifieds across motors, property, jobs, services, pets and goods...
🏷️ Subito.it
Scrape Subito.it listings across cars, real estate, marketplace, jobs, and more. Search...
🚗 Trade Me NZ Scraper
Scrape trademe.co.nz across all five sections: Marketplace goods and auctions, Property...
🚗 Carsales.com.au Scraper
Scrape structured vehicle listings from Carsales.com.au from $1 per 1K results. Built to...
🚗 Marktplaats.nl Scraper
From $1/1K. Scrape Marktplaats.nl listings by keyword or URL. Extract title, price...
🏷️ Daangn Scraper
From $1/1K. Scrape Daangn (당근) marketplace listings by keyword and region. Returns 35+...

👉 Browse all abotapi scrapers

💬 Support & custom scrapers

  • 🐞 Found a bug or a missing field? Open a ticket on the Issues tab. We usually reply within hours.
  • 🛠️ Need another site, extra fields or a private build? Email abotapi@proton.me or message Telegram @abotapi.
  • ⭐ Enjoying it? A quick review on the actor page helps other users find it.