Key Takeaway
Treat a sale price as a fact with time, market, currency, stock and eligibility conditions. Before using validFrom, validThrough or priceValidUntil, establish start and end times, time zones, the correct Offer level and membership or channel restrictions. Keep visible prices, checkout prices, Merchant Center feeds and JSON-LD consistent.
What's the official change?
The July 7 update described sale validity using validFrom for the start and validThrough or priceValidUntil for the end, with placement examples for Offer and PriceSpecification. The guidance aligns with Merchant Center's sale_price_effective_date.
These properties are not interchangeable decorations. Match the actual offer and data model: do not present a future sale as currently active or retain an expired price. Distinguish market, channel and membership eligibility with appropriate offers or price specifications instead of mixing unexplained prices.
Implications for International Brands
Time-zone mismatches are common: a promotion may end on Beijing time while a North American page still shows a discount, the feed has reverted and checkout follows another clock. Record ISO 8601 times, zones, markets and publishing systems in the sale record.
Frontend components, static HTML, JSON-LD, Merchant Center and dealers may cache prices independently. Updating only a visible label or only a feed leaves conflicting facts. Use one change process to synchronize systems and expire sale data automatically.
Separate public sales from login-only, volume, dealer-tier and project quotations. Do not present restricted prices as universally purchasable offers. Explain eligibility or inquiry requirements and use supported markup only where it accurately represents the offer.
Zhihe Growth's Assessment
Zhihe Growth treats prices as high-risk facts owned by ecommerce, finance or product teams in the source of truth, not by SEO alone. Schema generators should use the same authoritative price source.
Post-expiry verification matters as much as launch. Check pages, source, feeds and caches after the deadline, and separately monitor stale search or AI results. Use supported update notifications or sitemaps where appropriate; notifications do not replace correcting source data or guarantee immediate refresh.
Implementation Checklist
- 1. Record market, currency, time zone, start and end, applicable SKUs and eligibility for every promotion.
- 2. Use validFrom, validThrough and priceValidUntil consistently with the offer model; avoid contradictory dates.
- 3. Use the same price source for visible content, JSON-LD, feeds, cart and checkout.
- 4. Automate activation, expiry and extensions with an audit log.
- 5. Make member, volume and quotation conditions explicit; do not imply a restricted offer is open to everyone.
- 6. After expiry, refresh caches, update truthful sitemap lastmod values and sample search and AI results for stale prices.
Limitations
Structured data helps interpret prices but guarantees neither promotional display, rankings nor AI recommendations. Platforms also evaluate pages, feeds, eligibility, policies and other signals.
This article is not tax, pricing-law or consumer-protection advice. Local business and legal owners should confirm tax-inclusive presentation, reference-price rules, comparisons and validity requirements.
Official sources
- Google Search Central:Merchant listing structured data Source for sale duration and Offer/PriceSpecification property placement.
- Google Search Central:July 2026 documentation updates Source for the July 7 sale-validity documentation update.