How to Track Product Discounts with Google Shopping Data
Product discounts change constantly. An ecommerce brand may lower prices during a promotion. A competitor may offer a limited-time deal. A marketplace seller may reduce prices to win visibility. A product may show a sale price in Google Shopping results before the same change is noticed internally. For ecommerce teams, pricing analysts, SEO teams, marketplace […]
Product discounts change constantly.
An ecommerce brand may lower prices during a promotion. A competitor may offer a limited-time deal. A marketplace seller may reduce prices to win visibility. A product may show a sale price in Google Shopping results before the same change is noticed internally.
For ecommerce teams, pricing analysts, SEO teams, marketplace sellers, and AI shopping products, tracking discounts with Google Shopping data can help monitor market movement more clearly.
Google Shopping data can show product titles, prices, old prices, sellers, product links, ratings, reviews, delivery information, thumbnails, and ranking positions.
When collected over time, this data can help answer questions such as:
- Which products are discounted?
- Which competitors are running promotions?
- How large is the discount?
- How often does a product go on sale?
- Which sellers reduce prices most aggressively?
- Which discounted products appear higher in Shopping results?
- How do discounts differ by country, keyword, or category?
A practical workflow looks like this:
Product keywords
↓
Google Shopping data collection
↓
Price and old price extraction
↓
Discount calculation
↓
Historical snapshots
↓
Reports, alerts, dashboards, and AI workflows
This guide explains how to track product discounts with Google Shopping data, what fields to collect, how to calculate discounts, how to store snapshots, and how TalorData can support this workflow.
What Is Google Shopping Data?
Google Shopping data refers to product information shown in Google Shopping search results.
A typical product result may include:
| Field | Description |
| Product title | The displayed product name |
| Current price | The price currently shown |
| Old price | The previous or crossed-out price when available |
| Currency | The currency used in the result |
| Seller | The merchant or store selling the product |
| Product link | The product result URL |
| Thumbnail | Product image |
| Rating | Average user rating when available |
| Review count | Number of reviews when available |
| Delivery information | Shipping, pickup, or delivery text |
| Badge or label | Sale, discount, sponsored, or other visible label |
| Position | Where the product appears in Shopping results |
| Keyword | The query that triggered the result |
| Country and language | Market and result language |
| Collection time | When the result was collected |
For discount tracking, the most important fields are current price, old price, seller, product title, product URL, currency, and timestamp.
Without timestamps, you are not tracking discounts. You are staring at prices and hoping memory becomes analytics. It will not.
Why Track Product Discounts with Google Shopping Data?
Discount tracking is useful because product prices are not isolated numbers.
A discount can signal a promotion, clearance activity, seasonal campaign, inventory pressure, competitor pricing strategy, or marketplace competition.
Common use cases include:
| Use Case | What It Helps With |
| Competitor price monitoring | See when competitors reduce prices |
| Promotion tracking | Detect sales and limited-time discounts |
| Ecommerce reporting | Measure discount frequency by category |
| Marketplace monitoring | Track seller-level pricing behavior |
| Brand protection | Monitor unauthorized or aggressive discounts |
| Category research | Compare discount patterns across product groups |
| Dynamic pricing support | Use market data as pricing context |
| AI shopping agents | Provide fresh product price context |
| RAG workflows | Select product and seller sources for retrieval |
Discount tracking helps answer:
- Which products are currently on sale?
- Which competitors discounted similar products?
- Which sellers changed prices most often?
- Which products have the largest discount percentage?
- Which discounts are new this week?
- Which discounted products rank higher in Google Shopping?
- Are discounts different across countries or languages?
A price is a number. A discount is a behavior. Naturally, the behavior is where the useful mess lives.
Google Shopping Data vs Product Page Scraping
Tracking discounts from Google Shopping data is different from scraping individual product pages.
| Method | What It Shows | Best For |
| Google Shopping data | Product results visible in Shopping search results | Market visibility, competitor tracking, seller comparison |
| Product page scraping | Product details from a specific website page | Deep product details, stock status, page-level monitoring |
| Marketplace data | Product listings from a specific marketplace | Marketplace seller and listing analysis |
| Internal catalog data | Your own product data | Own pricing, margins, inventory, campaigns |
Google Shopping data is useful because it shows how products appear in search results.
That means you can track not only prices, but also visibility, sellers, rankings, and visible promotional signals.
For discount monitoring, this matters because a product discount is more meaningful when combined with search visibility.
A discounted product buried at position 40 and a discounted product appearing near the top of Shopping results are not the same problem. Humanity invented ranking positions so reports could become more complicated, apparently.
Step 1: Choose Product Keywords
Start by choosing the product keywords you want to monitor.
These can be brand terms, product categories, model names, or commercial queries.
Common keyword types include:
| Keyword Type | Example |
| Product category | wireless headphones |
| Brand + product | ExampleBrand running shoes |
| Model keyword | X200 noise cancelling headphones |
| Commercial keyword | best budget smartwatch |
| Seasonal keyword | Black Friday laptop deals |
| Competitor product | CompetitorBrand blender |
| Feature keyword | waterproof hiking boots |
| Price-sensitive keyword | cheap gaming monitor |
A simple keyword list may look like this:
wireless headphones
noise cancelling headphones
running shoes
gaming monitor
budget smartwatch
laptop deals
For better reporting, group keywords by category and intent.
| Category | Keyword | Intent |
| Electronics | wireless headphones | Product category |
| Electronics | noise cancelling headphones | Feature-based product |
| Footwear | running shoes | Product category |
| Computers | gaming monitor | Product category |
| Wearables | budget smartwatch | Price-sensitive product |
Start with products and categories where discount movement matters.
Do not begin by tracking every product the internet has ever coughed up. That way lies madness, and probably another spreadsheet.
Step 2: Choose Target Markets
Discounts can vary by country, language, seller, and currency.
A product may be discounted in the United States but not in Canada. A seller may offer different pricing in the United Kingdom. A product may show different availability or delivery text in different markets.
Useful market settings include:
| Setting | Why It Matters |
| Country | Prices and sellers vary by market |
| Language | Product titles and result text may vary |
| Currency | Needed for price comparison |
| Location | Useful for local availability or delivery context |
| Device | Desktop and mobile results may differ |
| Collection time | Needed for historical tracking |
Example market setup:
| Market | Country | Language | Currency |
| United States | US | English | USD |
| United Kingdom | UK | English | GBP |
| Canada | CA | English | CAD |
| Germany | DE | German | EUR |
| France | FR | French | EUR |
If you compare discounts across markets, always normalize currency and collection time.
Otherwise, the report becomes a festival of false conclusions, and nobody needs that kind of creativity.
Step 3: Collect Google Shopping Results
Once you have keywords and target markets, collect Google Shopping results.
A typical request may look like this:
{
"engine": "google_shopping",
"q": "wireless headphones",
"country": "us",
"language": "en",
"device": "desktop"
}
A simplified Shopping result may look like this:
{
"position": 3,
"title": "Example Wireless Headphones",
"price": "$79.99",
"old_price": "$99.99",
"seller": "Example Store",
"product_link": "https://www.example.com/product/example-headphones",
"rating": 4.6,
"review_count": 1240,
"delivery": "Free delivery",
"thumbnail": "https://www.example.com/image.jpg"
}
For discount tracking, collect the full result set, not only one product.
The full result set lets you compare:
- Your products vs competitors
- Sellers in the same category
- Discounted vs non-discounted products
- Ranking positions of discounted products
- Discount behavior across markets
- Changes over time
A single product record is a clue. A full result set is a market view.
Step 4: Extract Price and Discount Fields
To track discounts, extract and normalize price-related fields.
Important fields include:
| Field | Description |
| Current price | The displayed sale or current price |
| Old price | The previous or crossed-out price when available |
| Currency | Currency used in the result |
| Seller | Merchant or store |
| Product title | Product name |
| Product URL | Link to the product |
| Position | Ranking position in Shopping results |
| Keyword | Query that triggered the result |
| Country | Target market |
| Collection time | Snapshot time |
A normalized record may look like this:
{
"keyword": "wireless headphones",
"country": "us",
"currency": "USD",
"collected_at": "2026-07-14T09:00:00Z",
"position": 3,
"title": "Example Wireless Headphones",
"seller": "Example Store",
"current_price": 79.99,
"old_price": 99.99,
"product_url": "https://www.example.com/product/example-headphones"
}
Always convert price strings into numeric values.
For example:
| Raw Price | Numeric Price | Currency |
| $79.99 | 79.99 | USD |
| £89.00 | 89.00 | GBP |
| €129,99 | 129.99 | EUR |
Price parsing is not glamorous. It is just where bad dashboards go to die.
Step 5: Calculate Discount Amount and Discount Percentage
Once you have current price and old price, calculate the discount.
Discount amount:
discount_amount = old_price - current_price
Discount percentage:
discount_percentage = (old_price - current_price) / old_price * 100
Example:
| Product | Current Price | Old Price | Discount Amount | Discount Percentage |
| Example Wireless Headphones | 79.99 | 99.99 | 20.00 | 20.00% |
| Example Running Shoes | 64.00 | 80.00 | 16.00 | 20.00% |
| Example Smartwatch | 149.00 | 199.00 | 50.00 | 25.13% |
If old price is missing, you may still track price changes over time.
In that case, compare the current price against the previous snapshot.
Snapshot-based discount:
price_change = previous_price - current_price
price_change_percentage = (previous_price - current_price) / previous_price * 100
This is useful when Google Shopping does not show an old price but the product price still changes across snapshots.
Step 6: Store Price Snapshots
Discount tracking requires historical data.
Do not only store the latest price.
Store each collection as a snapshot.
A useful price snapshot table can include:
| Column | Purpose |
| product_id | Internal product identifier |
| keyword | Search query |
| country | Target market |
| language | Search language |
| currency | Currency |
| seller | Merchant or store |
| product_title | Displayed product title |
| product_url | Product link |
| position | Shopping result position |
| current_price | Current displayed price |
| old_price | Previous or crossed-out price |
| discount_amount | Calculated discount value |
| discount_percentage | Calculated discount percentage |
| rating | Product rating when available |
| review_count | Number of reviews when available |
| delivery | Delivery or shipping text |
| collected_at | Snapshot time |
Snapshots allow you to compare:
- Today vs yesterday
- This week vs last week
- Before campaign vs during campaign
- Seller A vs seller B
- Country A vs country B
- Discounted vs non-discounted products
Without snapshots, you are not tracking discounts. You are just catching prices in the act and then forgetting the crime.
Step 7: Match Products Across Snapshots
Product matching is one of the hardest parts of discount tracking.
The same product may appear with slightly different titles or URLs.
For example:
Example Wireless Headphones Black
Example Wireless Headphones - Black
ExampleBrand Wireless Headphones, Black
These may represent the same product.
Useful matching signals include:
| Signal | Usefulness |
| Product URL | Strong match when stable |
| Seller | Useful for seller-level tracking |
| Product title | Useful but may vary |
| Brand name | Useful supporting signal |
| Model number | Strong product identity signal |
| Image URL | Useful supporting signal |
| Price range | Helps detect mismatches |
| GTIN or SKU | Strong match when available |
A simple matching rule may look like this:
If product URL is the same, treat as the same product.
If seller, brand, model number, and title are very similar, treat as likely same product.
If title is similar but seller is different, treat as the same product sold by different sellers only when that matches your tracking goal.
If model number differs, treat as a different product.
Product matching deserves attention. Otherwise, your report will confidently compare headphones to shoes, because software has no shame.
Step 8: Track Discount Status
Once products are matched, assign discount status.
Useful discount status values include:
| Status | Meaning |
| Discounted | Current price is lower than old price |
| Newly discounted | Product was not discounted in the previous snapshot but is discounted now |
| Discount removed | Product was discounted before but no longer is |
| Price dropped | Current price is lower than previous snapshot |
| Price increased | Current price is higher than previous snapshot |
| No change | Price stayed the same |
| Missing old price | Old price is not shown |
| Out of result set | Product no longer appears in tracked results |
Example status table:
| Product | Previous Price | Current Price | Old Price Shown | Status |
| Example Wireless Headphones | 99.99 | 79.99 | 99.99 | Discounted |
| Example Running Shoes | 80.00 | 64.00 | 80.00 | Newly discounted |
| Example Smartwatch | 149.00 | 149.00 | Not shown | No change |
| Example Monitor | 199.00 | 229.00 | Not shown | Price increased |
This turns raw prices into something easier to report and act on.
Step 9: Compare Discounts by Seller
Google Shopping results may show multiple sellers for similar or identical products.
Seller-level discount tracking helps answer:
- Which sellers discount most often?
- Which sellers offer the largest discounts?
- Which sellers keep stable pricing?
- Which sellers rank higher when discounted?
- Which sellers offer better delivery terms?
- Which sellers frequently change prices?
Example seller comparison:
| Seller | Discounted Products | Average Discount | Largest Discount | Avg Position |
| Example Store | 18 | 17.5% | 35% | 4.2 |
| Market Seller A | 12 | 12.1% | 24% | 6.8 |
| Discount Outlet | 31 | 22.4% | 50% | 5.1 |
This is useful for competitor monitoring, marketplace analysis, and brand protection.
If an unauthorized seller is heavily discounting branded products, the data can help flag it.
Step 10: Compare Discounts by Category
Category-level discount tracking helps understand broader market behavior.
Useful category metrics include:
| Metric | Meaning |
| Discounted product count | Number of products on discount |
| Average discount percentage | Typical discount depth |
| Median discount percentage | More stable discount benchmark |
| Largest discount | Most aggressive price cut |
| Discount frequency | How often discounts appear |
| Average ranking position | Visibility of discounted products |
| Seller count | Number of sellers competing in the category |
Example category comparison:
| Category | Discounted Products | Average Discount | Largest Discount |
| Wireless headphones | 42 | 18.3% | 45% |
| Running shoes | 37 | 22.1% | 60% |
| Smartwatches | 21 | 15.8% | 35% |
| Gaming monitors | 16 | 12.4% | 28% |
This can help ecommerce teams understand which categories are promotion-heavy and which categories remain stable.
Step 11: Track Ranking Impact of Discounts
Discounts may influence product visibility in Shopping results, but the relationship is not always simple.
Track ranking position along with discount status.
Useful questions include:
- Do discounted products appear higher?
- Do larger discounts correlate with better positions?
- Do certain sellers rank better during promotions?
- Do discounted products stay visible longer?
- Do non-discounted products lose visibility during sale periods?
Example:
| Product | Discount | Position Before | Position After | Change |
| Example Wireless Headphones | 20% | 8 | 3 | Up 5 |
| Example Running Shoes | 25% | 5 | 4 | Up 1 |
| Example Smartwatch | 0% | 3 | 7 | Down 4 |
Do not assume discount alone explains ranking changes.
Delivery, relevance, seller strength, reviews, availability, and product feed quality may also matter.
The discount is one signal, not the whole opera.
Step 12: Build Discount Alerts
Discount alerts help teams react quickly.
Useful alert types include:
| Alert Type | Example |
| New discount detected | Product is newly discounted |
| Large discount detected | Discount exceeds 30% |
| Competitor discount | Competitor discounted a similar product |
| Seller discount spike | Seller increased discount activity |
| Price increase after discount | Product returned to normal price |
| Product disappeared | Product no longer appears in Shopping results |
| Cross-market discount gap | Product discounted in one country but not another |
Example alerts:
A competitor discounted “wireless headphones” by 25% in the US.
Example Store added a 40% discount on “running shoes.”
A product returned from $79.99 to $99.99 after a 7-day sale.
Discounted products now occupy 6 of the top 10 Shopping results for “gaming monitor.”
Good alerts should focus on meaningful changes. If every one-cent movement triggers a notification, the alert system becomes office noise wearing a dashboard.
Step 13: Build Discount Reports and Dashboards
A useful discount dashboard should help teams understand what changed, where, and why it matters.
Recommended dashboard sections include:
| Dashboard Section | What It Shows |
| Discount summary | Total discounted products and average discount |
| New discounts | Products newly discounted since the last snapshot |
| Largest discounts | Products with the deepest price cuts |
| Seller comparison | Which sellers discount most aggressively |
| Category comparison | Which categories are promotion-heavy |
| Ranking impact | Whether discounted products gained visibility |
| Country comparison | Discounts by market |
| Price recovery | Products returning to original price |
| Lost products | Products no longer appearing in results |
Useful report questions include:
- Which competitors started new promotions?
- Which products have the largest discounts?
- Which sellers are discounting most aggressively?
- Which categories became more promotional this week?
- Which discounted products gained Shopping visibility?
- Which discounts disappeared after a campaign ended?
The goal is not to admire charts. The goal is to make pricing, promotion, and market decisions without pretending vibes are data.
Step 14: Use Discount Data for AI Workflows
Google Shopping discount data can support AI agents and RAG systems.
Useful AI workflows include:
| AI Workflow | How Discount Data Helps |
| Price monitoring agent | Detect new discounts and price changes |
| Competitor research agent | Summarize competitor promotion activity |
| Ecommerce analyst agent | Compare discount behavior by category |
| Product recommendation agent | Use current discount context |
| Market research assistant | Identify promotion-heavy markets |
| RAG source selection | Select product and seller URLs for deeper retrieval |
A safe AI workflow may look like this:
Collect Google Shopping data.
Normalize products and prices.
Calculate discount fields.
Filter meaningful changes.
Verify important product pages.
Use verified discount data in AI or RAG workflows.
Discount data should be treated as fresh search context, not permanent truth.
Prices change. Sellers change. Listings disappear. The internet remains committed to making databases work for a living.
How TalorData Helps Track Product Discounts with Google Shopping Data
TalorData can act as the structured search data layer for collecting Google Shopping data.
Instead of manually searching product keywords and copying prices, teams can use TalorData to collect structured Shopping results by keyword, country, language, and device.
A practical TalorData workflow looks like this:
Product keywords
↓
Target markets
↓
TalorData SERP API
↓
Structured Google Shopping data
↓
Price snapshots
↓
Discount tracking, reports, alerts, dashboards, and AI workflows
TalorData supports workflows such as:
| Workflow | What It Supports |
| Discount tracking | Monitor current price, old price, and discount percentage |
| Competitor monitoring | Compare seller and competitor discount behavior |
| Ecommerce reporting | Build category and product-level discount reports |
| Marketplace analysis | Track seller-level pricing movement |
| Brand protection | Detect aggressive or unauthorized discounting |
| Market research | Compare discount behavior across countries |
| AI agents | Provide fresh product price context |
| RAG workflows | Select product and seller URLs for retrieval |
The value is repeatability. Teams can collect comparable Shopping data over time, store snapshots, and measure discount behavior instead of manually checking product results and pretending that is a system.
Final Thoughts
Tracking product discounts with Google Shopping data helps teams understand market movement, competitor promotions, seller behavior, category trends, and price visibility.
The basic process is:
Choose product keywords.
Choose target markets.
Collect Google Shopping data.
Extract current price and old price.
Normalize currencies and prices.
Calculate discount amount and percentage.
Store historical snapshots.
Match products across snapshots.
Build reports, alerts, dashboards, and AI workflows.
For ecommerce teams, pricing analysts, SEO teams, marketplace sellers, and AI shopping products, discount tracking turns Shopping results into measurable pricing intelligence.
Google Shopping results show what shoppers can see.
Structured discount data shows which products are changing, which sellers are moving, and where pricing opportunities exist.
FAQ
What is Google Shopping discount tracking?
Google Shopping discount tracking means collecting product results over time and monitoring current prices, old prices, discount amounts, discount percentages, sellers, and product visibility.
What fields should I collect?
Start with product title, current price, old price, currency, seller, product URL, position, rating, review count, delivery text, keyword, country, and collection time.
How do I calculate discount percentage?
Use this formula: discount percentage equals old price minus current price, divided by old price, multiplied by 100.
What if old price is missing?
If old price is missing, compare the current price with the previous snapshot to detect price drops or increases over time.
Can Google Shopping discount data be used for AI agents?
Yes. AI agents can use discount data to monitor price changes, summarize competitor promotions, compare sellers, support product recommendations, and select product sources for RAG workflows.