Skip to main content

Open product methodology

Know exactly what the result means.

FeedGuardrail exposes its release identity, deterministic rule coverage, processing boundaries, and evidence format so a result can be inspected instead of taken on faith.

Processing model

From file to actionable report

1

Read locally

Your selected feed is read in browser memory. The file is not sent to FeedGuardrail.

2

Normalize safely

Headers and supported CSV, TSV, RSS/XML, and Atom/XML records are converted into a consistent local model.

3

Run versioned rules

The google-merchant-local-2026-08-28.1 ruleset evaluates product rows and cross-feed relationships deterministically.

4

Export deliberately

Corrections, client summaries, and optional evidence packs are generated as local downloads.

Supported inputs: CSV, TSV, RSS/XML, Atom/XML · up to 100,000 product rows and 25 MB per selected file.

Rule catalog

23 deterministic checks

Every finding includes a stable rule ID, severity, affected field, source row, explanation, and recommended correction.

Versioned as one ruleset

required-id

Missing product ID

error

id

product row

Products without a stable identifier.

required-title

Missing title

error

title

product row

Products that cannot be identified by a title.

title-limit

Title exceeds 150 characters

warning

title

product row

Titles beyond the supported length.

title-front-load

Title may hide important details

warning

title

product row

Long titles whose useful attributes may be truncated in placements.

required-description

Missing description

error

description

product row

Products without a description.

description-limit

Description exceeds 5,000 characters

error

description

product row

Descriptions beyond the supported length.

required-link

Missing landing-page link

error

link

product row

Products without a destination URL.

invalid-link

Invalid landing-page URL

error

link

product row

Destination values that are not complete HTTP or HTTPS URLs.

required-image

Missing primary image link

error

image_link

product row

Products without a primary image URL.

invalid-image

Invalid image URL

error

image_link

product row

Image values that are not complete HTTP or HTTPS URLs.

availability-enum

Missing or unsupported availability

error

availability

product row

Availability values outside the supported channel vocabulary.

availability-date-required

Missing availability date

error

availability_date

product row

Preorder or backorder products without an availability date.

price-format

Missing or invalid price

error

price

product row

Prices without a positive amount and three-letter currency code.

sale-price

Invalid sale price

error

sale_price

product row

Sale prices with a mismatched currency or an amount not below regular price.

condition-enum

Unsupported condition

error

condition

product row

Submitted conditions outside the supported vocabulary.

identifier-boolean

Unrecognized identifier_exists value

warning

identifier_exists

product row

Ambiguous boolean values for identifier handling.

identifier-incomplete

Product identifiers look incomplete

warning

gtin / brand / mpn

product row

Products missing the expected identifier combination.

invalid-gtin

Malformed GTIN

error

gtin

product row

GTINs with an unsupported length or failed check digit.

duplicate-id

Duplicate product ID

error

id

whole feed

A product ID used by more than one row.

case-variant-id

Product IDs differ only by casing

warning

id

whole feed

IDs that become ambiguous when case is ignored.

mixed-currency

Multiple currencies in one feed

warning

price

whole feed

Catalogs that may contain accidentally combined regional prices.

single-variant-group

Variant group contains one product

warning

item_group_id

whole feed

Variant groups with no sibling products.

duplicate-variant

Duplicate variant attributes

warning

item_group_id / variant fields

whole feed

Products in one group that share the same variant signature.

Reproducible evidence

A comparison record another person can rerun.

Regression Guard records the exact input-file SHA-256 hashes, ruleset version, resolved and introduced findings, and inventory/schema changes. The recipient can load that evidence with both exact files and reproduce the outcome locally.

Exact inputs

Two SHA-256 hashes bind the record to the original and corrected file bytes.

Stable method

The evidence names the exact versioned ruleset used for the comparison.

Privacy minimized

Filenames and product IDs are excluded by default; feed rows and values are never embedded.

Evidence proves file identity and reproducibility only. It is not a digital signature, certification, authorship proof, or guarantee of Google approval.

Honest boundaries

What local checks cannot prove

  • Landing-page price or availability parity
  • Live image crawlability or image-content policy
  • Merchant Center account, policy, or diagnostics state
  • Approval, traffic, revenue, or advertising performance

Inspect it, then use it.

Run the built-in samples before selecting a real feed. No account or ad-platform connection is required.

Open the validator