Shopping Feed Price & Stock Auditor avatar

Shopping Feed Price & Stock Auditor

Pricing

$10.00 / 1,000 product page audits

Go to Apify Store
Shopping Feed Price & Stock Auditor

Shopping Feed Price & Stock Auditor

Audit Google Shopping and Merchant Center feed prices, currencies and stock against live product-page structured offers. CSV/XML/JSON inputs, evidence per mismatch, cautious variant matching and scheduled checks. No account access.

Pricing

$10.00 / 1,000 product page audits

Rating

0.0

(0)

Developer

Riccardo Vecchi

Riccardo Vecchi

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Compare your Shopping feed with the structured offers actually published on your product landing pages. Find price, currency and stock mismatches, with the expected value, observed value, product identity and source URL in every report.

Built for ecommerce teams and PPC agencies that refresh catalogs on a schedule. It reads public pages and returns evidence; it never changes campaigns, feed data or Merchant Center settings.

Quick start

Paste product records into Products with expected feed values and click Start:

{
"products": [{
"id": "demo-bulbasaur",
"url": "https://scrapeme.live/shop/Bulbasaur/",
"price": "63.00 GBP",
"availability": "in_stock"
}],
"maxProducts": 100,
"priceTolerance": 0.01
}

The prefilled URL belongs to a public scraping demonstration store. Its live price can change; the example expected price is a test input, not a fixture injected into the output. Change the expected price to test a mismatch.

Alternatively, clear products and supply feedUrl or feedText. Use exactly one source. Supported formats: comma-delimited CSV, tab-delimited TSV, Google RSS/Atom XML, or a JSON array / items / products array. Files must be uncompressed UTF-8, at most 5 MB and 10,000 items. No private account or feed API connection is needed.

What it checks

  • Expected feed price versus an identified JSON-LD Product/Offer or scoped Microdata offer.
  • Expected currency versus the offer currency, without conversion or guessing.
  • in_stock, out_of_stock, preorder and backorder versus supported schema.org availability values.
  • Active sale prices, including timezone-aware sale_price_effective_date intervals.
  • Product identity through an explicit GTIN, explicit SKU, exact offer URL, or a single unambiguous offer on a URL without a variant query.
  • Landing-page HTTP failures, robots exclusions, missing offers and ambiguous variants as explicit diagnostics or review records.

Variant query parameters are retained. If your feed id is also the product SKU, supply it explicitly as sku for identity matching. A feed ID is not automatically treated as a SKU.

Input fields

Product records use id, url (or link), price, optional currency, availability, sku, gtin, sale_price and sale_price_effective_date. Price can be 19.99 EUR, or a number with currency: "EUR". Use decimal points. Sale intervals require explicit timezones, for example 2026-10-01T00:00:00Z/2026-10-31T23:59:59Z.

maxProducts selects up to 1,000 records per run. startOffset selects later slices in a larger feed. The summary states the input size and selected slice; partial coverage is never presented as a full-feed audit. Exact duplicate input records are merged; different variants are kept.

Results

FieldMeaning
statusmatch, mismatch, review, fetch_failed, skipped or unsupported
expectedPrice, expectedCurrency, expectedAvailabilityValues submitted in your feed
observedPrice, observedCurrency, observedAvailabilityValues from the selected structured offer
priceDifferenceObserved minus expected, only when currencies agree
priceResult, availabilityResultSeparate comparison outcomes
matchMethodIdentity selection or the reason identity was uncertain
issues, reviewReasonsMachine-readable discrepancy and uncertainty codes
evidenceSelected offer, identifiers, extraction method and source URL
suggestedActionNext check to investigate the discrepancy

Export JSON, CSV or Excel. Flat issuesText and reviewText fields are ready for spreadsheets. The key-value store also contains SUMMARY and a short REPORT.md.

Pricing

$10 per 1,000 successfully analyzed HTML landing pages ($0.01 each), platform usage included. One page-audited event per HTML report, including match, mismatch and review. Missing structured offers still produce a useful review report and are charged when HTML was successfully analyzed. HTTP failures, robots exclusions, non-HTML responses and invalid input diagnostics are uncharged. No start fee or additional fee per detected problem.

Set the maximum charge in Run options to bound charged results. At $0.01 per report, 200 daily checks over 30 days cost $60; this is a buyer-cost example, not a savings or revenue forecast.

Recurring use

Save a task with your public feed URL and schedule it daily or after catalog updates. Read the dataset through the Apify API or Make/n8n/Zapier and filter status == "mismatch" for alerts. The Actor does not send messages itself. It audits the selected feed slice afresh on each run; it does not maintain a historical price database.

Scope and limitations

This is a structured-data parity audit. A match is not verification of rendered visible prices, checkout, taxes, shipping, discounts requiring membership, regional pricing, Google approval or account compliance. These require additional review. No monetary recovery or prevention of disapprovals is guaranteed.

Server HTML only: no JavaScript rendering, login, CAPTCHA bypass, proxy requirement or paid external API. JSON-LD and scoped Microdata are supported. Aggregate price ranges, multiple conflicting offers, unidentified variants and unsupported availability values are marked for review rather than guessed. At most 100 distinct structured offers per page are examined.

The crawler respects robots.txt, accepts public HTTP(S) destinations on standard ports only, rejects private/reserved networks, pins DNS resolution and permits redirects within the same hostname/www boundary. It waits at least one second between requests on an origin and honors crawl delays up to 10 seconds. HTML responses are capped at 2 MB and individual requests at 12 seconds. Some stores therefore return uncharged diagnostics; test representative URLs before auditing a large catalog.

For support, open an Actor issue with a public product URL, run ID and expected field values. Do not post private feed URLs, tokens or customer information.

References

Independent tool; not affiliated with Google, Shopify or WooCommerce.