Missing Sale Price Effective Date
You submitted a sale_price in your feed but didn't specify when the sale starts and ends. Google needs this date range to know when to apply the discounted price in Shopping results and when to revert to the regular price. Without it, Google applies the sale_price indefinitely, which can cause issues when your actual landing page reverts to the regular price. The sale_price_effective_date attribute uses ISO 8601 format: '2026-04-20T00:00-0500/2026-04-27T23:59-0500'.
Missing value [sale_price_effective_date]Impact: Missing sale price effective date is a Warning, but it has direct consequences. Without a date range, Google applies the sale price permanently — which conflicts with your intended promotional window and can cause price mismatches when the sale ends. Products may be disapproved when the page price reverts but the feed sale price continues.
Root Causes
- 1Your feed app submits sale_price automatically when a sale is active but doesn't populate sale_price_effective_date — a common gap in older feed templates.
- 2Manual feed setup: you added sale_price via CSV but didn't include a sale_price_effective_date column.
- 3Your platform tracks sale dates internally (Shopify's automatic compare-at pricing, WooCommerce's sale schedule) but your feed plugin isn't pulling those dates into the feed output.
- 4You run evergreen sales without defined end dates — no date is set because the sale is intended to be permanent, but Google still requires a valid date range.
- 5Timezone misconfiguration — the date format requires a timezone offset (e.g., -0500 for EST) and submissions without it are rejected as invalid rather than missing.
Fix by Platform
- 1Shopify tracks sale pricing via the 'Compare at price' field but doesn't have native sale start/end dates. For scheduled sales, use Shopify's Discount features.
- 2In your feed app (Simprosys, AdNabu): map sale_price to the product's current price (when it's lower than compare-at), and sale_price_effective_date to the Shopify Discount's start/end dates if applicable.
- 3For evergreen sales: set sale_price_effective_date to a long range (e.g., 2026-01-01 to 2027-12-31) so Google knows the sale is effectively permanent. Update this periodically.
- 4For scheduled flash sales: use Shopify's Launchpad app or a scheduling app that sets temporary discount pricing with explicit start/end timestamps.
- 5Date format: ISO 8601 with timezone. Example: '2026-04-20T00:00-0500/2026-04-27T23:59-0500' means April 20 at midnight EST through April 27 at 11:59 PM EST.
{% comment %} Build sale_price_effective_date from Shopify discount dates {% endcomment %}
{% if product.compare_at_price > product.price %}
{{ discount.starts_at | date: '%Y-%m-%dT%H:%M%z' }}/{{ discount.ends_at | date: '%Y-%m-%dT%H:%M%z' }}
{% endif %}When This Doesn't Apply
Check your store now
Free compliance scan — 47 rules checked in minutes.
Frequently Asked Questions
What's the correct date format for sale_price_effective_date?+
ISO 8601 format with timezone: 'YYYY-MM-DDTHH:MM±HHMM/YYYY-MM-DDTHH:MM±HHMM'. Example: '2026-04-20T00:00-0500/2026-04-27T23:59-0500' represents a week-long sale in Eastern Standard Time. Use forward-slash '/' to separate start and end. Both dates must include timezone offset — without it, Google rejects the value.
What if my sale is evergreen with no end date?+
Set a far-future end date (e.g., 5 years from today). Google requires both a start and end date in the range. Using a distant end date effectively creates a permanent sale price while satisfying the schema. Update the end date annually to prevent the sale from expiring unexpectedly.
Do I have to match the sale dates on my landing page?+
Yes — partially. Google crawls your landing page to verify the sale price during the effective date range. If your page shows a sale price during the feed's date range, it works. If your page reverts to regular price mid-sale (or continues sale pricing after the feed's end date), you'll get price mismatch errors. Keep feed dates synced with actual landing page pricing.
What's the difference between sale_price, price, and sale_price_effective_date?+
'price' is your regular/MSRP price. 'sale_price' is the discounted price to display during a promotion. 'sale_price_effective_date' defines when the sale runs. During the effective date range, Google shows sale_price with a strikethrough on price. Outside the range, Google shows only 'price' as normal. All three work together to make promotional pricing transparent to shoppers.