Tesco Product Scraper avatar

Tesco Product Scraper

Pricing

from $2.60 / 1,000 overview product extracteds

Go to Apify Store
Tesco Product Scraper

Tesco Product Scraper

Scrape Tesco groceries — price, unit price, Clubcard offers, nutrition, ingredients & allergens. Keyword or aisle search, detail enrichment, clean JSON/CSV, no code.

Pricing

from $2.60 / 1,000 overview product extracteds

Rating

0.0

(0)

Developer

SIÁN OÜ

SIÁN OÜ

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

3 hours ago

Last modified

Share

Tesco Product Scraper — Prices, Clubcard, Nutrition & Allergens to JSON/CSV 🚀

SIÁN Agency Store Walmart Data Scraper Amazon Product Scraper Google Shopping Price Scraper

🎉 Turn any Tesco search, aisle, or product page into a clean dataset — prices, Clubcard offers, unit prices, ratings, and full nutrition, ingredients & allergens in a single run.

Perfect for grocery price analysts, comparison sites, nutrition-app builders, and range researchers who need reliable Tesco data without lifting a finger.


📋 Overview

The Tesco Product Scraper turns tesco.com/groceries into structured data in seconds. Search by keyword, browse an aisle, or paste Tesco product URLs, and get a clean JSON/CSV dataset with one row per product — prices, Clubcard offers, unit prices, ratings, availability, and complete nutrition, ingredients, and allergens.

No account, no API key, no setup. Just enter what you want, click Run, and download export-ready data for grocery price monitoring, nutrition feeds, and range research.

Why professionals choose us:

  • Zero Setup: No Tesco account or API key — enter keywords and go
  • Fast Overview Mode: Pull search and aisle results at scale — id, title, price, unit price, Clubcard price, rating, and availability
  • 🏷️ Clubcard & Unit Price Built In: Capture Clubcard/offer prices, promotion text, and unit prices (£/kg, £/litre, £/100g) for true like-for-like comparison
  • 🥗 Deep Detail Mode: Enrich every product with full nutrition tables, ingredients, allergens, storage, pack size, brand, and the complete image gallery
  • 💰 Pay-Per-Result Pricing: Only pay for products you actually extract — plus a free tier to test risk-free
  • 💎 One Clean Record Per Product: Overview and detail are merged into a single row — no stitching, no duplicates
  • NEW: Dietary Filters: Filter by Vegan, No gluten, Organic, Vegetarian, Halal, and Kosher to build focused catalogs

✨ Features

  • 🔍 Keyword & Aisle Search: Find products by free-text search or by Tesco aisle/browse paths
  • 🔗 Paste Tesco URLs: Drop in any tesco.com/groceries search, aisle, or product URL and scrape it directly
  • Overview Mode: Fast results extraction — product id, title, price, unit price, Clubcard price, promotion text, image, availability, and taxonomy (super-department → department → aisle → shelf)
  • 🥗 Detail Mode: Full nutrition table, ingredients, allergens, storage instructions, pack size, brand, manufacturer, dietary icons, and complete image gallery
  • 🏷️ Clubcard & Promotions: Clubcard/offer price, promotion text, and on-offer flag for every product
  • 📏 Unit Price Comparison: £/kg, £/litre, £/100g and unit of measure for true value-for-money analysis
  • Ratings & Reviews: Star rating and total review count for every product
  • 📦 Availability Intelligence: In-stock status and availability for stock and range checks
  • 🥦 Dietary Filters: Vegan, No gluten, Organic, Vegetarian, Halal, and Kosher filtering
  • 🎚️ Sorting & Filters: Relevance, Price low→high, Price high→low — plus brand, min/max price, on-offer, and new-products filters
  • 💾 Clean JSON & CSV: Export-ready dataset with one row per product, priced in GBP (£)

🎬 Quick Start

Enter keywords, aisle paths, or Tesco URLs, pick a mode, and click Run. Results land in your dataset ready to export.

# Run via API - one line
curl -X POST https://api.apify.com/v2/acts/sian.agency~tesco-product-scraper/runs?token=[YOUR_TOKEN] \
-d '{"queries": ["milk"], "scrapeMode": "overview"}'

🚀 Getting Started (3 Simple Steps)

Step 1: Tell It What to Scrape

Enter search keywords (e.g. milk, coffee, pasta), add Tesco aisle/browse paths, or paste tesco.com/groceries URLs. Mix and match as needed.

Step 2: Choose Mode & Filters

Pick Overview (fast search and aisle data) or Detail (enriched with nutrition, ingredients, and allergens). Optionally set a sort order, brand, min/max price, on-offer, new-products, or dietary filters (Vegan, No gluten, Organic, Vegetarian, Halal, Kosher).

Step 3: Run & Download

Click Run and download clean, structured data as JSON, CSV, or Excel — ready for spreadsheets, databases, and analytics tools.

That's it! In minutes, you'll have:

  • Live prices, Clubcard/offer prices, promotion text, and unit prices (£/kg, £/litre)
  • Ratings, review counts, images, and availability for every product
  • Full nutrition tables, ingredients, allergens, storage, and pack size (detail mode)
  • Clean export-ready data priced in GBP, one row per product

📥 Input Configuration

FieldTypeRequiredDescription
queriesarrayNoFree-text Tesco searches (e.g. "milk", "coffee")
browsePathsarrayNoTesco aisle / browse paths to scrape (e.g. "drinks/coffee")
urlsarrayNoTesco search, aisle, or product URLs to scrape directly
scrapeModestringNooverview (fast) or detail (nutrition, ingredients, allergens)
sortstringNoRelevance, Price low→high, Price high→low
brandstringNoLimit results to a single brand
dietarystringNoA single Tesco dietary facet — Vegan, No gluten, Organic, Vegetarian, Halal, or Kosher
minPricenumberNoMinimum price band (GBP)
maxPricenumberNoMaximum price band (GBP)
onOfferbooleanNoOnly return products on offer / with a Clubcard price
newProductsbooleanNoOnly return newly added products
maxResultsintegerNoMaximum number of products to return

Example — keyword search, detail mode:

{
"queries": ["coffee"],
"scrapeMode": "detail",
"sort": "price_low",
"dietary": "Vegan",
"minPrice": 2,
"maxPrice": 8,
"onOffer": true,
"maxResults": 100
}

Example — scrape aisle paths and URLs:

{
"browsePaths": ["fresh-food/fresh-milk"],
"urls": [
"https://www.tesco.com/groceries/en-GB/search?query=oat%20milk"
],
"scrapeMode": "overview"
}

📤 Output

Results are saved to the Apify dataset with 30+ fields per product, one clean row each. In detail mode, the overview row is enriched in place with nutrition, ingredients, allergens, and the full gallery — no separate records to merge.

FieldTypeDescription
tpncstringTesco product number (unique product ID)
productTitlestringFull product name
brandstringBrand name
pricenumberCurrent price (GBP)
unit_pricenumberPrice per unit of measure (e.g. £/kg, £/litre, £/100g)
unit_of_measurestringUnit the unit price is based on (kg, litre, 100g, each)
clubcard_pricenumberClubcard / offer price (GBP)
promotion_textstringPromotion / offer description
ratingnumberAverage star rating
review_countnumberTotal number of reviews
in_stockbooleanWhether the product is currently in stock
pack_sizestringPack / product size (e.g. 200g, 4 pints)
nutritionarrayNutrition rows — each { name, values[] } (energy, fat, carbs, protein, salt…) (detail)
ingredientsarrayFull ingredients list (detail)
allergensarrayDeclared allergens (detail)
dietary_iconsarrayDietary / food icons (Vegan, Red Tractor, etc.) (detail)
imagesarrayFull product image gallery (detail)

Full example (detail mode):

{
"thumbnail": "https://digitalcontent.api.tesco.com/v2/media/ghs/image.jpg",
"tpnc": "254656242",
"tpnb": "81496284",
"productTitle": "Nescafe Gold Blend Instant Coffee 200G",
"url": "https://www.tesco.com/groceries/en-GB/products/254656242",
"source": "detail",
"brand": "Nescafe",
"manufacturer": "Nestlé UK Ltd, Haxby Road, York, YO91 1XY",
"price": 6.00,
"unit_price": 3.00,
"unit_of_measure": "100g",
"currency": "GBP",
"clubcard_price": 5.00,
"promotion_text": "Clubcard Price £5.00 until 21 Jul",
"on_offer": true,
"rating": 4.6,
"review_count": 1893,
"in_stock": true,
"availability": "AvailableForSale",
"pack_size": "200g",
"super_department": "Drinks",
"department": "Coffee",
"aisle": "Instant Coffee",
"shelf": "Instant Coffee Granules",
"dietary_icons": ["Vegetarian"],
"nutrition": [
{ "name": "Typical Values", "values": ["Per 100g"] },
{ "name": "Energy", "values": ["1470kJ/346kcal"] },
{ "name": "Fat", "values": ["0.5g"] },
{ "name": "Carbohydrate", "values": ["10.0g"] },
{ "name": "Protein", "values": ["14.0g"] },
{ "name": "Salt", "values": ["0.10g"] }
],
"ingredients": ["Coffee", "Decaffeinated using a water process"],
"allergens": ["May contain: Milk"],
"storage": ["Store in a cool, dry place. Reseal after use."],
"images": [
"https://digitalcontent.api.tesco.com/v2/media/ghs/1.jpg",
"https://digitalcontent.api.tesco.com/v2/media/ghs/2.jpg"
],
"metadata": { "scrapedAt": "2026-07-14T10:30:00.000Z" }
}

💼 Use Cases & Examples

1. Grocery Price & Clubcard Monitoring

Retail and pricing teams tracking Tesco prices, Clubcard offers, and promotions over time.

Input: Keywords or aisle paths for your product lines Output: Current price, Clubcard/offer price, promotion text, and on-offer flag Use: Detect price drops and Clubcard deals the moment they go live and react faster.

2. Unit-Price & Value Comparison

Comparison sites and analysts benchmarking value across brands and pack sizes.

Input: Keywords or aisle paths for a category (e.g. coffee, washing powder) Output: Unit price (£/kg, £/litre, £/100g), unit of measure, and pack size per product Use: Rank products by true value-for-money regardless of pack size.

3. Product & Assortment Research

Category managers mapping what Tesco carries in a niche.

Input: Aisle/browse paths or URLs, overview mode Output: Full product lists with id, brand, price, rating, and taxonomy (super-department → shelf) Use: Understand range breadth, brand mix, and price distribution at a glance.

4. Nutrition & Allergen Data Extraction

App, feed, and health-tech teams building nutrition and allergen databases.

Input: Product URLs or keywords, detail mode Output: Full nutrition tables, ingredients, allergens, storage, and pack size Use: Populate nutrition apps, meal planners, and food databases with accurate label data.

5. Dietary Catalog Building

Teams building Vegan, gluten-free, or organic product catalogs.

Input: Keywords or aisle paths with dietary filters (Vegan, No gluten, Organic, Vegetarian, Halal, Kosher) Output: Filtered product lists with dietary icons, ingredients, and allergens Use: Build focused specialty-diet catalogs and product feeds without manual curation.

6. Stock & Availability Checks

Resellers, meal-kit, and delivery teams monitoring what's available.

Input: Keywords or URLs for the products you source Output: In-stock status and availability for every product Use: Only list what's actually available and avoid disappointing customers.


🔗 Integration Examples

JavaScript/Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('sian.agency/tesco-product-scraper').call({
queries: ['coffee'],
scrapeMode: 'detail',
maxResults: 100
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0]);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('sian.agency/tesco-product-scraper').call(
run_input={'queries': ['coffee'], 'scrapeMode': 'detail'}
)
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item)

cURL

curl -X POST 'https://api.apify.com/v2/acts/sian.agency~tesco-product-scraper/runs?token=YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"queries": ["coffee"], "scrapeMode": "detail"}'

Automation Workflows (N8N / Zapier / Make)

  1. Trigger: Schedule or webhook
  2. HTTP Request: Call the actor API
  3. Process: Handle the JSON product results
  4. Action: Save to a database, update a pricing sheet, or send an alert

📊 Performance & Pricing

FREE Tier (Try It Now)

  • Up to 25 products per run — full feature access, same data quality
  • No credit card required
  • Perfect for testing keywords, aisles, and detail mode
  • Unlimited products per run
  • Faster, at-scale extraction with no caps
  • Pay-per-result: you're only charged for products that are successfully extracted

💰 Fair, transparent pricing — pay for the products you get, nothing more.

🔗 View current pricing


❓ Frequently Asked Questions

Q: How many products can I scrape? A: FREE tier: up to 25 products per run. PAID tier: unlimited.

Q: Do I need a Tesco account or API key? A: No. There's nothing to sign up for or configure — just enter keywords, aisle paths, or URLs and run.

Q: What's the difference between Overview and Detail mode? A: Overview is the fast path — search and aisle data like product id, title, price, unit price, Clubcard price, promotion text, rating, and availability. Detail enriches each product with the full nutrition table, ingredients, allergens, storage instructions, pack size, brand, manufacturer, dietary icons, and complete image gallery.

Q: Do you capture Clubcard prices and unit prices? A: Yes — every product includes the Clubcard/offer price, promotion text, and the unit price (£/kg, £/litre, £/100g) alongside the standard price.

Q: Can I filter and sort results? A: Yes — sort by Relevance, Price low→high, or Price high→low, and filter by brand, min/max price, on-offer, new products, and dietary (Vegan, No gluten, Organic, Vegetarian, Halal, Kosher).

Q: What output formats are available? A: JSON, CSV, and Excel — export directly from the Apify dataset.

Q: Which region and currency does it cover? A: The UK storefront (tesco.com/groceries), with prices in GBP (£).

Q: Is this legal? A: Yes — the actor accesses only publicly available data. See the legal section below.


🐛 Troubleshooting

No results returned

  • Check keyword spelling and try broader terms (e.g. coffee instead of an exact product)
  • Remove or widen filters (brand, min/max price, on-offer, dietary)
  • Verify any Tesco URLs open correctly in a browser

Nutrition, ingredients, or allergens are missing

  • Switch scrapeMode to detail — full nutrition tables, ingredients, allergens, and galleries are only extracted in detail mode

Fewer products than expected

  • FREE tier is capped at 25 products per run — upgrade to PAID for unlimited results
  • Some aisles or filtered searches simply contain fewer products

Prices look different from what I expect

  • Results reflect the UK storefront (tesco.com/groceries) in GBP; Clubcard prices require the promotion to be live, and prices may differ from in-store

Our actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what is publicly available. 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 (for example, reviewer names). 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.

Trademark & affiliation disclaimer: SIÁN Agency is an independent provider and is not affiliated with, endorsed by, or sponsored by Tesco. "Tesco", "Clubcard" and related names, marks, and logos are trademarks of their respective owner. This actor is not an official Tesco product or service and accesses only publicly available data.


🤝 Support

Telegram Support

Join our active support community


Built by SIÁN Agency | More Tools