Ducted

Free product feed validator.
Every platform, full error detail.

Paste a feed URL or upload a file and know in seconds which records the platform would reject, why, and what the fix looks like - with example rows straight from your feed. Google Shopping, Meta, TikTok, ChatGPT Ads, and every platform Ducted supports.

or upload a file
Drop file here or browse
CSV, TSV, XML, JSON, JSONL, XLSX (gzip OK)

Free, no signup. Your feed is parsed in memory and deleted within 15 minutes - we keep only an anonymous summary of issue types found, never your feed content, records, or URL.

Every error explained - and how to fix it

Each error names the rule, the field, and how many records it hits, next to example rows from your own feed and the expected format or accepted values - so the fix is a copy-paste, not a guess. Invalid values in optional fields are listed as warnings, because platforms discard those values instead of rejecting the record. And recommended fields you haven't filled are named one by one - the quickest wins for better ad performance. Take the whole report with you as CSV, JSON, or PDF.

Feed-level
  • Unreachable URL or blocked fetch, with automatic US retry
  • Web page served instead of a feed
  • Unparseable structure
  • Empty feed
Errors & warnings
  • Missing required fields
  • Values outside the accepted list
  • Format violations (price, patterns)
  • Length limits
  • Misformatted link and image URLs
  • Duplicate IDs
  • Invalid values in optional fields, flagged as warnings - the platform discards the value, the record still serves
Recommendations
  • Recommended fields you're not filling yet - the quickest wins for better ad performance

Validate once, switch platforms instantly

The validator reads the same live template rules Ducted uses to build and monitor production feeds - 36 templates across Google, Meta, Microsoft, TikTok, Criteo, Pinterest, Snapchat, X, and ChatGPT Ads, vehicle listings included. Validate once, then re-check the same feed against any other platform in one click, no re-upload.

ChatGPT Ads validatorGoogle Shopping validatorMeta catalog validatorVehicle Listing Ads validatorTikTok catalog validator

Questions, answered

Yes. No signup, no email, no card. Paste a feed URL or upload a file and the full error report appears immediately. Anonymous use is limited to 10 fresh validations per hour; switching platforms on an already-validated feed doesn't count against that.

Google Shopping, Meta catalogs, TikTok, Microsoft/Bing, Pinterest, Criteo, Snapchat, X, ChatGPT Ads (ACP), plus vertical feeds like vehicle listing ads - every platform Ducted supports. New platforms are added to the validator the moment their template ships.

Feed-level problems (unreachable URL, unparseable structure, empty feed), duplicate IDs, missing required fields, values outside the platform's accepted list, format and length violations, and misformatted link and image URLs. Every error shows how many records it hits, example rows from your feed, and the expected format or accepted values - so you know the fix, not just the problem. Invalid values in optional fields are flagged as warnings, since platforms discard those values rather than reject the record. The whole report can be downloaded as CSV, JSON, or PDF.

No. Your feed is parsed in memory and deleted within 15 minutes (the short window exists so you can re-check the same feed against another platform without re-uploading). We keep only an anonymous summary of issue types found - never your feed content, records, or URL.

A public feed URL (CSV, TSV, XML, JSON, or JSONL, gzip-compressed or not), or an uploaded file: CSV, TSV, TXT, XML, JSON, JSONL, XLSX, and gzipped versions of these. Delimiters and formats are auto-detected - including the JSONL format ChatGPT Ads (ACP) feeds are delivered in.

First, know that many feeds simply refuse requests from outside their region - when that happens we automatically retry through our US endpoint, and if the feed still won't answer, downloading it in your browser and uploading the file here always works. If there's genuinely no feed behind the URL, that's what our Website Indexing service exists for: we build a structured feed directly from your website's pages and keep it fresh.