Gumtree Scraper avatar

Gumtree Scraper

Pricing

from $1.00 / 1,000 listings

Go to Apify Store
Gumtree Scraper

Gumtree Scraper

Gumtree UK search and listing pages as structured rows: title, price, location, posting date, images, category attributes and seller data. Optional full listing pages. Priced per delivered row, no start fee.

Pricing

from $1.00 / 1,000 listings

Rating

5.0

(1)

Developer

delta spider

delta spider

Maintained by Community

Actor stats

0

Bookmarked

28

Total users

0

Monthly active users

5 days ago

Last modified

Share

Gumtree listings in one dataset

Paste any Gumtree UK search or category URL and get its listings as structured rows: title, price, location, posting date, images, seller id and the category attributes Gumtree shows on the card. Turn on detail pages for the full description, every attribute, all images and the seller's rating and stats. Export to JSON, CSV or Excel, or read the dataset through the Apify API.

Before you pick a Gumtree scraper, check five things

  1. Does it take the URL you already have? Any gumtree.com search, category or listing URL works here, with the filters and sort order you set on the site.
  2. What does one row cost, and is there a start fee? This Actor charges per delivered row and nothing else: $1 per 1,000 search rows, $2 per 1,000 full listing pages, on every plan. A run that delivers no rows costs nothing.
  3. Are detail pages priced separately? Search rows and full listing pages are different products with different costs. They are two events here, so you never pay detail prices for search rows.
  4. Does it stop where you tell it to? maxResults and Apify's maximum total charge are both exact: the Actor delivers up to the limit and stops before fetching pages it will not deliver.
  5. How many results can one search return? Gumtree serves at most 50 pages of 30 per search, so one URL yields up to 1,500 rows. Split broad searches by category, location or price to go further.

How to use it

  1. Open gumtree.com, search or browse to a category, apply filters and sorting, and copy the URL from the address bar.
  2. Paste one or more URLs into Start URLs. Listing URLs (/p/...) are fetched as full detail rows.
  3. Set Max listings per URL (default 25) and, if you want full listing pages, tick Scrape detail pages.
  4. Run the Actor and download the dataset.

Example: the first 100 cars in Leeds, newest first.

{
"startUrls": [{ "url": "https://www.gumtree.com/search?search_category=cars&search_location=leeds&sort=date" }],
"maxResults": 100
}

Example: full listing pages for 50 pets adverts.

{
"startUrls": [{ "url": "https://www.gumtree.com/pets" }],
"maxResults": 50,
"scrapeDetails": true
}

What you get

Every row starts with _startUrl (the input URL it came from) and _position (its one-based rank in that search; null for a listing URL you pasted directly). Dates are ISO strings: postedDate is the day, postedDateTime the exact time.

Search row

One row per listing on the search or category pages, as delivered on September 24, 2026. Image arrays are shortened here.

{
"_startUrl": "https://www.gumtree.com/for-sale/computers-software",
"_position": 1,
"id": 1802287755,
"categoryId": 10919,
"l1CategoryId": 2549,
"l2CategoryId": 2515,
"title": "Laptop Briefcase by Safeport Protection Systems.",
"price": "£20.00",
"postedDate": "2026-09-17",
"imageUrl": "https://img.gumtree.com/ePR8PyKf84wPHx7_RYmEag/dd9840463c9d4f93a5_89e150dc5e6c/86",
"additionalImageUrls": [
"https://img.gumtree.com/ePR8PyKf84wPHx7_RYmEag/ba05729cf36f42ab8c_a0ce7eb2b685/86",
"https://img.gumtree.com/ePR8PyKf84wPHx7_RYmEag/2bbd0fcd2c644b8f99_9c7022ee8fd2/86",
"..."
],
"imageIds": ["dd9840463c9d4f93a5_89e150dc5e6c", "ba05729cf36f42ab8c_a0ce7eb2b685", "..."],
"status": "LIVE",
"numberOfImages": 6,
"urgent": false,
"featured": true,
"bumpup": false,
"standout": false,
"hasVideo": false,
"premium": false,
"course": false,
"shortDescription": "Multi Function Laptop Briefcase by Safeport Protection Systems.\n\nDesigned for Salesmen or Business People on the go.\nI’m pretty certain it is leather, but if it isn’t, then it’s the most convincing imitation I have ever seen. It seems to be identical",
"location": "Cambridge, Cambridgeshire",
"attributes": [
{
"name": "Parcel Size",
"value": "Large",
"key": "parcel_size",
"vipOrder": 1,
"unit": ""
},
{
"name": "Condition",
"value": "As good as new",
"key": "common_for_sale_condition",
"vipOrder": 1,
"unit": ""
}
],
"proAccount": false,
"sellerId": 100408763,
"accountId": 99867715,
"distanceVO": "75 miles",
"favouriteCount": 0,
"adPostCode": "CB19GF",
"adLocationId": "10000358",
"supportShipping": true,
"visibleOnMap": false,
"postedDateTime": "2026-09-17T17:13:29.303Z",
"url": "https://www.gumtree.com/p/laptop-cases-bags/laptop-briefcase-by-safeport-protection-systems./1802287755"
}
FieldWhat it contains
id, urlGumtree's listing id and the listing's page. Use id to compare runs.
title, price, shortDescriptionThe card's title, displayed price (a string with currency) and description excerpt.
location, adPostCode, latitude, longitude, distanceVOWhere the item is, when Gumtree shows it.
postedDate, postedDateTimeWhen the advert was posted.
imageUrl, additionalImageUrls, imageIds, numberOfImagesThe card image, the others, and their ids.
attributesCategory attributes such as year, mileage or bedrooms, each with name, value, key and unit.
sellerId, accountId, proAccountThe seller's ids and whether it is a business account.
status, featured, urgent, standout, premium, bumpup, hasVideo, supportShippingListing status and the promotion flags Gumtree sets.
categoryId, l1CategoryId, l2CategoryIdGumtree's category ids.

Detail row

With Scrape detail pages, or for a pasted listing URL, each row is the full listing page. Arrays are shortened here.

{
"_startUrl": "https://www.gumtree.com/pets",
"_position": 4,
"id": 1802109273,
"categoryName": "Other Pets Equipment & Accessories",
"attributes": [
{
"name": "Posted",
"value": "26 days ago",
"key": "Posted",
"vipOrder": 0,
"unit": ""
},
{
"name": "Condition",
"value": "As good as new",
"key": "common_for_sale_condition",
"vipOrder": 1,
"unit": ""
}
],
"allAttributes": [
{
"name": "Posted",
"value": "26 days ago",
"key": "Posted",
"vipOrder": 0,
"unit": ""
},
{
"name": "Condition",
"value": "As good as new",
"key": "common_for_sale_condition",
"vipOrder": 1,
"unit": ""
}
],
"description": [
"Selling our amazing automatic litter tray which we bought in February this year.",
"Unfortunately we had to rehome our kitten in June so this is no longer needed and was only used for 3 months.",
"This tray was a true life saver for us and took all the hassle out of daily cleaning and also got rid of the litter smell.",
"You top it up with litter every 2 to 3 weeks and empty the tray at the bottom every 2 weeks. It does everything else by itself and has a built in air freshner too. All controlled automatically and/or via the app which tells you all the health metrics about your cat's toilet visits and it weighs your cat too.",
"Includes full manual and a roll of bags for the litter tray and a mat. ",
"This is one of the largest automatic litter trays you can buy at 90L so its suitable for multiple cats.",
"You will never have to scoop the litter again!",
"Bought for two hundred and fifty when new. Selling at a low price for quick sale.",
""
],
"favouriteCount": 3,
"price": "£175.00",
"priceInPounds": 175,
"seoPrice": "175.00",
"title": "Devoko Automatic Cat Litter Tray 90L.",
"postingSince": "15+ years",
"l1Category": 2526,
"l1CategorySeoName": "pets",
"leafCategoryId": 1018,
"l2CategoryId": 12647,
"seoL1Category": "Pets",
"seoL2Category": "Equipment & Accessories",
"sellerOtherAds": "/sellerads/1802109273?userId=4768963&publicUserId=fff4fd4a1bf47221526a8bfdb1c74a54",
"showLegalDisclaimer": false,
"pro": false,
"containsCallTrackingFeature": false,
"sellerType": null,
"subArea": "Ferry Road",
"isCurrentUserSeller": false,
"isFromMotorsFeed": false,
"currentPageUrl": "/pets/pet-equipment-accessories/other-pets-equipment-accessories/uk/ferry-road",
"scoreAndReviews": {
"total": 2,
"average": 5,
"breakdown": {
"1": 0,
"2": 0,
"3": 0,
"4": 0,
"5": 2
},
"type": "GT"
},
"featured": false,
"standout": false,
"urgent": false,
"bumpup": false,
"userSentMessage": false,
"area": "Edinburgh",
"locationId": 10090,
"postcode": "EH45PX",
"gfjLocationPostcode": "EH45PX",
"gfjLocationLocality": "Ferry Road",
"gfjLocationRegion": "Edinburgh",
"gfjLocationCountry": "GB",
"gfjHiringOrganizationName": "-",
"gfjDatePostedInISOFormat": "2026-08-29",
"gfjValidThroughInISOFormat": "2026-11-27",
"gfjEmploymentType": "OTHER",
"gfjWorkingFromHome": false,
"gfjIndustry": "Other Pets Equipment & Accessories",
"createdDate": 1788001352524,
"lastModifiedDate": 1789923676059,
"locAvailable": false,
"priceStatus": "miss",
"postedDate": "2026-08-29",
"postedDateTime": "2026-08-29T11:02:35.853Z",
"url": "https://www.gumtree.com/p/other-pets-equipment-accessories/devoko-automatic-cat-litter-tray-90l./1802109273",
"location": "Ferry Road, Edinburgh",
"sellerRating": {
"total": 2,
"average": 5,
"type": "GT",
"breakdown": {
"1": 0,
"2": 0,
"3": 0,
"4": 0,
"5": 2
},
"contactName": "Maz",
"accountPublicId": "fff4fd4a1bf47221526a8bfdb1c74a54"
},
"sellerStats": {
"postingSince": "15+ years",
"replySpeed": null,
"replyRate": null
},
"imageUrl": "https://img.gumtree.com/ePR8PyKf84wPHx7_RYmEag/ccbebb3f5f3848be99_e41e209fbc4b/86",
"additionalImageUrls": [
"https://img.gumtree.com/ePR8PyKf84wPHx7_RYmEag/a928a7ffb6a5448b99_6aafa1088435/86",
"https://img.gumtree.com/ePR8PyKf84wPHx7_RYmEag/04c16765e3c2476d95_e708a3946e34/86",
"..."
],
"sellerId": 4768963
}

Detail rows add description (an array of paragraphs), allAttributes and grouped attributes, priceInPounds as a number, location plus area, postcode and locationId, sellerType, sellerRating, sellerStats, sellerOtherAds, createdDate and lastModifiedDate, the full additionalImageUrls, and for job adverts the gfj* fields. Fields depend on what Gumtree publishes and can be null or absent.

Pricing

Pay per delivered row, on every Apify plan, with no start fee:

EventPrice1,000 rows
Search row (listing)$0.001$1.00
Full listing page (listing-detail)$0.002$2.00

A run that delivers nothing has no Actor charge. Apify's maximum total charge caps spending exactly: the Actor delivers what fits and stops before fetching more, so a $0.012 limit on a 40-row search delivers 12 rows, and the same limit on two searches plus a listing URL delivers 10 search rows and 1 listing page. Rows already delivered remain billable if a run later fails. The Pricing tab is the authoritative statement of the current terms.

Limits and common questions

Why did I get fewer rows than maxResults? The limit is a ceiling. A search stops at its last page (Gumtree serves at most 1,500 per search), at your limit, or at your maximum total charge. With Scrape detail pages on, a listing that appears on two pages of the same search is fetched and delivered once, so the count can be one short.

Can the same listing appear twice? In search-row mode, yes: Gumtree reorders results while a run pages through them, so a listing can show up on two pages and be delivered on both. Deduplicate by id if that matters to you. A 300-row test run returned 285 distinct listings.

Which Gumtree sites work? gumtree.com (United Kingdom). Other domains are skipped with a warning.

Do I need a proxy? No. Runs use Apify Proxy automatically; there is no proxy input.

What about the cars category home page? gumtree.com/cars-vans-motorbikes/cars is a landing page without results. The Actor runs the cars search for it instead, keeping any filters in the URL.

What happens when a run fails? Rows already saved stay in the dataset. A search page, or a listing URL you pasted, that cannot be fetched after retries fails the run. A listing page reached through Scrape detail pages that cannot be fetched is skipped and the run continues.

Is the data personal? Rows contain what Gumtree shows publicly on its pages: listing content, locations, seller display names and ids. Phone numbers behind the "reveal" button are never fetched. Use the data in line with Gumtree's terms and applicable law.

Input reference

InputHow to use it
startUrlsOne or more gumtree.com search, category or listing URLs. Required.
maxResultsPositive integer, the most rows to deliver per search or category URL. Default 25.
scrapeDetailstrue to fetch each listing's page instead of its search card. Default false.

API, schedules and support

Use the API tab for ready-made requests and client code. Schedule the same input in Apify to collect snapshots over time and compare rows by id.

Report a problem through the Issues tab with the run id and what you expected. This independent Actor is not affiliated with Gumtree.