Back

Product Feed validator

Data conversion

Loading

Loading tool

The tool is loaded only when you open it.

All processing for this tool happens in your browser. Your input is not sent to a server.

About this tool

Check required core fields, exact IDs, HTTP(S) URLs, ordinary-product prices and cross-field dates using one dated local profile for CSV and RSS 2.0 XML. google-merchant-core-v1 · rules checked 2026-10-12. Ordinary positive prices only: ≤12 integer digits / 2 decimals, USD/CNY/JPY/EUR/GBP. Other currency codes and fields (including structured titles/descriptions, brand, GTIN, shipping) are marked unchecked. ID: ≤50 code points, no whitespace/control characters; exact case-sensitive duplicates are errors, case-only differences are warnings. No platform acceptance, live specification, website, image, country/tax or catalog checks.

Common uses

  • The CSV/RSS 2.0 example has 2 items and 3 errors: exact duplicate ID 001, missing backorder availability_date, and sale_price 12.00 CNY above price 10.00 CNY. Its first item uses price 20.00 USD and sale_price 15.00 USD.
  • 200 CSV items with malformed prices produce 200 located issues, previewed in 50-issue pages; the issues CSV contains every issue, profile google-merchant-core-v1 and rule date 2026-10-12.

How to use it

  1. 1.Select CSV or RSS 2.0 XML and paste the bounded source, or load the example.
  2. 2.Check the Feed, then inspect item/error/unchecked counts, locations, rule codes and related locations.
  3. 3.Review every issue page and optionally save the complete protected issues CSV. Read the dated profile and separately check platform requirements not covered here.

Limits and notes

  • Input ≤128 KiB UTF-8, 200 items, 32 fields/item, 5000 UTF-16 units/cell; XML ≤5000 DOM items, depth 64, 32 namespace declarations. Report ≤2 MiB / 8400 issues, preview 120 code points, 50 issues/page. Oversized inputs reject without partial results.
  • google-merchant-core-v1 · rules checked 2026-10-12. Ordinary positive prices only: ≤12 integer digits / 2 decimals, USD/CNY/JPY/EUR/GBP. Other currency codes and fields (including structured titles/descriptions, brand, GTIN, shipping) are marked unchecked. ID: ≤50 code points, no whitespace/control characters; exact case-sensitive duplicates are errors, case-only differences are warnings. No platform acceptance, live specification, website, image, country/tax or catalog checks.
  • Dates: YYYY-MM-DD (midnight UTC), or YYYY-MM-DDTHH:mm[:ss] with Z or ±HHmm / ±HH:mm (up to ±14:00). Calendar dates and range order are checked. Preorder/backorder requires availability_date; sale_price must have the same currency and be lower than price; a sale range requires sale_price. Future-date limits are not checked. Zero-price contract/subscription exceptions, timestamp fractions, timezone-free times and automatic price rounding are outside this profile. CSV locations use logical records (header = 1), not physical lines; embedded newlines stay inside a cell. XML locations identify direct item fields by namespace and occurrence. XML is restricted to RSS 2.0 with one channel and channel title/link/description; DTD/entities and nested supported fields reject. Unknown fields are reported, never silently treated as checked.
  • Parsing and validation run locally. Pasted URLs are never fetched; no feed upload or input storage. The issues CSV includes all issues, profile/date, original location, related location, codes and explicitly marked ID/value previews capped at 120 code points. Every cell has formula-prefix protection; UTF-8 BOM/CRLF. Import IDs as text to preserve leading zeros. A save request does not confirm a file was saved.

Frequently asked questions

Does no issue guarantee Merchant acceptance?

google-merchant-core-v1 · rules checked 2026-10-12. Ordinary positive prices only: ≤12 integer digits / 2 decimals, USD/CNY/JPY/EUR/GBP. Other currency codes and fields (including structured titles/descriptions, brand, GTIN, shipping) are marked unchecked. ID: ≤50 code points, no whitespace/control characters; exact case-sensitive duplicates are errors, case-only differences are warnings. No platform acceptance, live specification, website, image, country/tax or catalog checks.

What XML and field profiles are supported?

CSV locations use logical records (header = 1), not physical lines; embedded newlines stay inside a cell. XML locations identify direct item fields by namespace and occurrence. XML is restricted to RSS 2.0 with one channel and channel title/link/description; DTD/entities and nested supported fields reject. Unknown fields are reported, never silently treated as checked.

How are prices and cross-field dates checked?

Dates: YYYY-MM-DD (midnight UTC), or YYYY-MM-DDTHH:mm[:ss] with Z or ±HHmm / ±HH:mm (up to ±14:00). Calendar dates and range order are checked. Preorder/backorder requires availability_date; sale_price must have the same currency and be lower than price; a sale range requires sale_price. Future-date limits are not checked. Zero-price contract/subscription exceptions, timestamp fractions, timezone-free times and automatic price rounding are outside this profile.

Which locations and values does the issues CSV contain?

The issues CSV includes all issues, profile/date, original location, related location, codes and explicitly marked ID/value previews capped at 120 code points. Every cell has formula-prefix protection; UTF-8 BOM/CRLF. Import IDs as text to preserve leading zeros. A save request does not confirm a file was saved.

Related tools