FeedMender

FeedMender/How it works

The method

Your feed is repaired without being touched

The correction lives in a second file that Google reads alongside your own. Your shop keeps exporting exactly as it does now, and the fix keeps applying anyway. This page explains the mechanism that makes that possible, and its limits.

Two data sources, kept apart

A Merchant Center account reads your products from a primary data source: the file your shop exports, or the link Google fetches from it. A supplemental data source is a second file attached to the same account. It does not stand on its own and it cannot create a product. What it does is match rows in the primary source on id and override named attributes on the products it finds there.

FeedMender writes one supplemental data source. It carries your product ids and, next to each, only the attributes a scan found a reason to change. Everything it does not mention is left exactly as your own feed states it. Google rebuilds each product out of both files every time it processes them: your row first, the overlay second.

Because the two files are separate, nothing of ours is ever written back into your export. Your CMS, your feed plugin, and the file itself never see the correction and have nothing of ours to overwrite. That is the whole idea, and it is worth being precise about why it holds.

Why the nightly regeneration cannot undo it

Most feed fixes are edits to the feed. The next export writes over them, so the work has to be repeated on a schedule, which is what a subscription pays for. An overlay is not an edit. Your shop can regenerate the file at three in the morning, rewrite every description, and reorder the columns. The next fetch reads that new file, and then applies the same overlay on top of it again, matched on the ids that did not change.

It stops applying on exactly two events, both of them yours:

  • You remove the data source in Merchant Center.
  • A product's id disappears from your primary feed, because there is then nothing for the overlay to match.

Nothing Google does on its own schedule, and nothing your shop does on its own schedule, removes the correction. That is why this is a purchase and not a rental.

The daily read is also what keeps your products alive

Google refetches a supplemental source on a schedule, every 24 hours by default. That is not only how the correction stays current: it is also what stops your product data from lapsing. Product data expires 30 days after its last refresh, and a source Google reads every day is a source that never reaches that horizon. You do not upload the file once and hope. It sits in a place Google returns to, and the returning is the point.

The natural home for that file is a spreadsheet in your own Google account. Merchant Center connects to it through your account rather than through a public link, so the corrections stay inside your workspace, under your access rules, and never pass through us again after you download them. The install steps walk through where each setting lives.

What a supplemental source cannot do

The same property that makes it safe also bounds what it can reach.

  • It only updates ids that already exist in your primary feed. Products you add after the scan are not covered until you run a fresh scan that includes them.
  • It cannot add or remove products. A supplement with an id your feed does not contain simply matches nothing. This is also why it cannot break your catalogue: the worst case for a row that fails to match is that it does nothing at all.
  • It has to be attached to the right primary source. Feed label and language must match the source it belongs to, or Merchant Center will not join the two.

A worked example of one row

Say your export sends this row tonight, and again, differently formatted, tomorrow night:

id: 10482-M   title: SALE! Merino jumper   color: #1F2A44   price: 119,95

The overlay carries the same id and only the attributes a scan found reason to change, for instance a corrected color of Navy. When Google processes your account, it reads your row first and then lays the overlay on top of it, matched on 10482-M. The served product keeps everything you sent except the corrected colour. Tomorrow your shop can rename the columns, move the row, and re-encode the file: the id is still 10482-M, so the same overlay applies again, to the new row, without anyone touching it.

Getting the attachment right

The one place a supplemental source has to line up with your account is the attachment. It is joined to a specific primary source, and the feed label and language have to match that source, or Google will not associate the two and the overlay will appear to do nothing. If you run more than one primary feed, one per country or per language, the supplement belongs to the one whose products it corrects. The report names the primary source, feed label and language your sheet has to match, so this is a value to copy rather than a decision to make. The install steps show where each of those settings lives in Merchant Center.

What this does not change about your shop

You give us a file and we give you a file. There is no permission to grant, no code to install, and no access to your store or your Merchant Center account. Your primary feed, your product pages, and your export schedule are all untouched. The one place anything new appears is a supplemental data source you add yourself, in an account only you control.

Because we never see your Merchant Center account, we can tell you what your data says, but not what Google finally decided about it. Those are two different questions, and the second one needs account access we deliberately do not ask for.

The scan and the full report cost nothing. The quickest way to see what a fix would contain is to run one on your own file.

References, checked against Google's Help Center in July 2026: Supplemental data sources, Manage products and their expiry.