Takealot Price Drop Monitor & Scraper - South Africa avatar

Takealot Price Drop Monitor & Scraper - South Africa

Pricing

from $2.39 / 1,000 product returneds

Go to Apify Store
Takealot Price Drop Monitor & Scraper - South Africa

Takealot Price Drop Monitor & Scraper - South Africa

Schedule it hourly/daily and get only new products, price drops and price rises from Takealot, with the old price. Search by keyword, department or brand: price, list price, saving, rating, reviews and stock in ZAR. Export JSON, CSV or Excel.

Pricing

from $2.39 / 1,000 product returneds

Rating

0.0

(0)

Developer

NeverEmpty

NeverEmpty

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Security

Limited permissions

Share

Schedule it hourly/daily → get only new listings & price drops from Takealot. For resellers, online shops, deal sites and bargain hunters in South Africa: type a product name (or paste a Takealot search, department or product URL) and every run returns each product's price, rating, reviews, stock and delivery estimate in ZAR, plus the list price and saving whenever Takealot shows them. Turn on watch mode and later runs return only what changed since the last run, with the previous price and the change in %.

  • Search by keyword, department (home-kitchen, computers, cellphones, gaming, toys, beauty...) or brand
  • Filter by in-stock only, featured deals only, minimum star rating and price range in rand
  • Watch exact products by pasting their Takealot product URLs
  • Price, list price and saving as shown on Takealot, plus the price range for products sold in several options
  • Each product once per run, even when two searches overlap
  • Export to JSON, CSV or Excel, or send rows to Google Sheets, Slack or a webhook with Apify integrations

What you get

FieldExample
productId, url98945485, link to the Takealot product page
title, subtitle, brandRussell Hobbs Digital 9L Air Fryer - RHAF09S, Smart pause function, Russell Hobbs
price, listPrice, savingText899, 1499, 40% (price in rand; list price and saving when Takealot shows them)
priceMax, hasOptionsHighest price when the product comes in several options (colour, size...); price is then the cheapest option
rating, reviewCount4.8, 2166
inStock, stockStatus, warehousestrue, In stock, ["CPT", "DBN", "JHB"]
deliveryEstimate, isPreorderGet it Tomorrow, 7am - 7pm, false
sku, tsinTakealot's own product numbers
currencyAlways ZAR
imageUrlProduct image
changeType, previousPrice, priceChange, priceChangePercent, comparedOn, previousInStock, previousSeenAt, removedReasonWatch mode: what changed since the last run, and the price it is compared with

How to use it

  1. Type one or more product names in Products to search, for example air fryer, iphone 15 or lego. You can also paste the URL of a Takealot search or department page with your filters set, or the URL of a product page (.../PLID...).
  2. If you like, pick a Department, Brands, In stock only, Deals only, a minimum rating or a price range.
  3. Set Max products per search and run. Leave everything empty to run the example: 36 products for air fryer.

To keep track of prices, turn on Watch mode and add a schedule (hourly or daily). See Monitoring on a schedule.

Input

FieldWhat it does
searchQueriesProduct names, Takealot search or department URLs, or product URLs. Up to 50 searches and 1,000 product URLs per run.
departmentTakealot department as in its URL, for example home-kitchen, computers, gaming. With no search words, the whole department is searched.
brandBrands as shown on Takealot, for example Russell Hobbs, Defy, Samsung.
inStockOnly, dealsOnlyOnly products in stock now, or only featured deals.
minRatingOnly products rated at least this many stars.
minPrice, maxPricePrice range in ZAR.
sortByRelevance, price low/high, top rated or newest.
maxResultsPerSearchProducts per search (default 100, at most 10,000).
monitoringModeWatch mode for schedules.
minChangePercentReport a price move only when it reaches this % (default 1).
includeUnchangedAlso return products that did not move.
watchName, resetMonitoringStateKeep separate memories for two watches of the same search, or start over.

Example input

{
"searchQueries": ["air fryer"],
"brand": ["Russell Hobbs", "Defy"],
"inStockOnly": true,
"maxResultsPerSearch": 200,
"monitoringMode": true,
"minChangePercent": 5
}

Output

A real row from a run on 2026-10-28 (search air fryer):

{
"status": "ok",
"productId": 98945485,
"url": "https://www.takealot.com/russell-hobbs-digital-9l-air-fryer-rhaf09s/PLID98945485",
"title": "Russell Hobbs Digital 9L Air Fryer - RHAF09S",
"subtitle": "Smart pause function",
"brand": "Russell Hobbs",
"price": 899,
"priceMax": null,
"listPrice": 1499,
"savingText": "40%",
"hasOptions": false,
"rating": 4.8,
"reviewCount": 2166,
"inStock": true,
"stockStatus": "In stock",
"warehouses": ["CPT", "DBN", "JHB"],
"deliveryEstimate": "Get it Tomorrow, 7am - 7pm",
"isPreorder": false,
"sku": 224000182,
"tsin": 100366962,
"imageUrl": "https://media.takealot.com/covers_images/5c8058bc304740c2a9cb18919b56228a/s-zoom.file",
"currency": "ZAR",
"searchQuery": "air fryer",
"scrapedAt": "2026-10-28T21:52:51.877Z"
}

Every row has a status. Product rows are ok. When a search finds nothing, a product is gone, or a search stops early, you get one free row that says so (no-results, not-found, incomplete, blocked, unreadable, bad-input), so you always know how the run went.

Monitoring on a schedule

Turn on Watch mode, then click Schedule on the Actor page and pick hourly or daily.

  • First run: returns the products it finds, each with changeType: "new", and remembers their prices.
  • Every later run: returns only
    • new - products that just appeared in your search, or came back after leaving it
    • price_drop - cheaper than last time, with previousPrice, priceChange and priceChangePercent
    • price_up - pricier than last time
    • removed - the product left your search for two runs in a row (removedReason: "left-search"). Reported for searches the run read in full (the search fits in Max products and has no price range).
  • Quiet run: one free no-change row confirms the run worked.

Small moves add up: with minChangePercent: 5, a product that drops 2% a day is reported on the third day, compared with the price it was last reported at. Only a complete read can mark a product as removed.

In watch mode, a search sorted by relevance or top rated is read newest first, so every run compares the same products. To watch the cheapest or priciest products of a big search, sort by price.

Each search is tracked separately. To watch the same search twice with different settings, give each task its own watchName. To start over, run once with resetMonitoringState.

Pricing

You pay per product row, plus a small start fee per run:

EventPrice
Product row (ok)$2.99 per 1,000 rows (less on higher Apify plans)
Run start$0.003

Status rows (no-change, no-results, not-found, incomplete and the others) are free. In watch mode you pay only for the rows that changed, so a daily watch of 200 products where 10 moved costs about $0.03 per run. The first watch run returns every product as new, so it bills all of them (200 products = about $0.60 + $0.003).

FAQ

How do I get an alert when a product drops in price on Takealot? Turn on Watch mode, type the product name or paste its product URL, set minChangePercent (for example 5) and schedule the Actor daily. Each run returns only the products that got cheaper or pricier, with the old price. Connect the run to Slack, email or a webhook with Apify integrations to get the alert.

Can I track a whole department or brand? Yes. Leave the search empty, set department (for example home-kitchen) and, if you like, brand. Set maxResultsPerSearch high enough to cover the products you want.

Can I watch exact products? Yes. Paste the Takealot product URLs, one per line. Each run returns those exact products.

Can I catch new products when Takealot lists them? Yes. On an hourly or daily schedule in watch mode, every product that appears in your search for the first time comes back with changeType: "new". Sort by newest to watch the latest listings of a big search.

What currency are the prices in? South African rand. Every row carries currency: "ZAR".

Can I export to Excel or Google Sheets? Yes. Download the dataset as CSV or Excel, or use the Google Sheets integration.

Good to know

  • Unofficial and not affiliated with Takealot.
  • Takealot shows up to 10,000 products for one search here. For larger searches, split by department, brand or price range; the run adds an incomplete row when a search hits that limit.
  • Prices are those shown on Takealot.com in ZAR at the time of the run. listPrice and savingText are null when Takealot shows no list price for the product.
  • Watch mode compares the price. A change in stock alone is not reported, but every watch row carries inStock and previousInStock.

Thanks for using this Actor

We build these tools for people who run them every day, and we improve them from what users tell us.

  • Missing a field, or need another filter? Tell us in the Issues tab. If the data is there, we add it.
  • Found a bug or a wrong value? Post the run ID in the Issues tab. Wrong data is the thing we fix first.

If this Actor saved you time, a short review helps other people find it.