Fix apporval issues on your products
When a product has a problem, Omega Feed shows you the exact error, which attribute caused it, and what to change — often before Google or Facebook has even reviewed it. This article covers:
- Feed health — how many of your products are ready, and how Omega checks your data before every sync.
- How Omega groups issues — account-level problems vs. feed-level problems.
- The general fix — open the product's final feed data and correct the value that was sent.
- Fix in bulk — edit or assign a value on many selected products at once.
- The mapping fix — change the mapping so every product is corrected at once.
- Error-code reference — what each code means and exactly which field to fix.

Check your feed health
Open any feed. The Feed health card sits above the feed's issue list and answers one question: how many of your products can run ads right now.
- The ring — the share of products with no Error. Below it, X of Y products ready gives the same number as a count.
- Error — sync blocked. Fix this issue to list your product.
- Has warnings — synced with warnings. May affect listing performance.
- Can improve — optional. Add more details to boost performance.
Each product variant is counted once, under its worst issue — a variant with one error and three warnings counts only as Error. Only Error lowers the ready share; warnings and improvements never block a listing.
The top right of the card shows Last check: and when it ran. While the feed is syncing it shows Generating report... and the numbers come back as soon as the sync finishes.

How Omega checks your feed before it syncs
You do not have to wait for the channel to find a mistake. Every time a feed syncs to Google or Facebook — by API or by XML file — Omega Feed checks each product against that channel's official product data spec, and shows what it finds right after the sync.
- What it checks — required attributes that are empty, values over the length limit, values the channel does not accept (for example an unknown condition or availability), titles written in ALL CAPS, invalid GTINs, links over 2,000 characters, and a sale price that is not lower than the price.
- Omega detected — issues found by this check carry an Omega detected badge. Hover it: Issue detected by Omega's pre-check. Channel-specific errors will be updated after sync. Once the channel reports the same issue, the channel's version replaces it and the badge disappears.
- Fixed issues clear themselves — every sync re-checks each product from scratch, so an issue you fixed is gone after the next sync.
Most findings are only reported — Omega never rewrites your data for them. The one exception is a value of the wrong type (for example a word where the channel expects yes/no):
- On a required attribute — the product is not sent until you fix it. On an API feed the channel keeps the version it already has; on an XML feed the product is left out of the file. The product's sync error reads Not sent: a required attribute has a value the channel does not accept.
- On an optional attribute — the product is still sent, without that one attribute.

How Omega groups your issues
Every error the channel returns is sorted into one of two tiers. The tier tells you where the fix lives — and fixing an account-level problem first often clears hundreds of product-level errors at once.
- Account issues— the connection or the channel account itself is blocked: an expired login, an unclaimed website, a suspended Merchant Center, a missing shipping policy. These affect every feed pushing through that account, and no product change will clear them.
- Feed issues— the data one feed sends for specific products is wrong or incomplete: a missing size, an invalid price, a title over the limit. These affect only the products listed, and you fix them in the product data or in the feed's mapping.
What you see | Tier | Where you fix it |
|---|---|---|
Connection expired, access revoked, account not connected | Account | Reconnect the channel in Omega Feed |
Account suspended, policy violation, website not claimed | Account | Google Merchant Center / Meta Commerce Manager |
No shipping policy, store website not set | Account | Google Merchant Center settings |
Missing / invalid attribute on some products | Feed | Product's final feed data, or the feed's mapping |
Title too long, description too long, price out of range | Feed | The product in Shopify, or the feed's mapping |

Find the products that are failing
Go to Feed -> Products. The Approval status column shows a red N issues badge on every product a channel rejected.
- Switch to the Not approved tab to see only the blocked products.
- Click the N issues badge on any row to open the issue details.
Each issue card shows the error title, how many variants it affects, and a filter button that shows only the products with that issue.

Fix one product using its final feed data
The fastest way to understand a rejection is to look at exactly what Omega sent. Open Feed → Products, then click a product row to open its detail.
The table you land on is the final feed data — everything this feed submits for that product:
- Attributes — the channel attribute name. A red * marks the ones the channel requires; hovering it says Required. Missing values lead to rejection.
- Value — what this feed actually sends today. This is the value the channel judged.
- Default feed value — what the mapping produces before any override.
Read the error code first, find that attribute in the table, and look at its Value:
- Blank on a required attribute → the source field in Shopify is empty, or nothing is mapped to it. Fill it in Shopify, or map it (next section).
- Wrong or malformed value → correct it at the source in Shopify so every feed benefits.
- Correct in Shopify but wrong for this one channel → type the right value straight into the Value field and save. The row is then badged Customized and keeps your value on every sync until you press Reset default value.

Fix many products at once with Bulk edit
When a group of products needs its own value — not your whole catalog — fix them together instead of opening each one. Go to Feed → Products, tick the rows you want to fix, and pick one of the two bulk actions in the bar that appears above the table.
- Select the products — tick rows one by one, or tick the header checkbox and press Select all products is filtering to take every product matching the current filter (for example the Not approved tab, or one error code).
- Bulk edit — opens a spreadsheet-style grid of the selected products. Best when each product needs a different value (a different title, size or GTIN per row).
- Bulk assign — sets one value on one attribute for every selected row, for example the same gender or age group. Best when the selected products all need the same value.
In the Bulk edit grid:
- Open Columns and tick the attributes you want to edit. Title is always shown; your pick is remembered next time.
- Use Approval status to show the issues of each row next to the attribute they blame. It starts on Error — add Warning or Improvement to see more.
- Type the new values straight into the cells.
- Press Save. Only the cells you changed are saved.
In Bulk assign, pick the attribute (**Assign **), enter the value and press Apply. The value replaces what the feed generates for the selected rows.
Your situation | Choose |
|---|---|
A few products, each needs a different value | Bulk edit |
Many products need the same value on one attribute | Bulk assign |
Every product in the feed is wrong the same way | Mapping fields (next section) |
Bulk changes are saved as custom values, exactly like editing one product: the rows are badged Customized, keep your value on every sync, and only change this feed — other feeds are not affected.

Fix every product at once using mapping fields
If dozens or hundreds of products report the same missing attribute, the source is almost never the products — it is the mapping. Open Feed → Mapping fields or Mapping rules.
The Field mapping configuration card lists every attribute the channel accepts:
- Attributes — the channel attribute, with a red * on the required ones.
- Shopify value — the Shopify field (or fixed text) that fills it. This is what you change.
- Preview — a sample of the result, so you can confirm the mapping before saving.
To fix a "missing attribute" error for a whole feed:
- Type the attribute name into Search for attribute — for example
description. - Open the Shopify value picker on that row.
- Pick the Shopify field that holds the data — a variant option, a product field, a metafield — or type a fixed value that is true for your whole catalog.
- Check Preview, save, and re-sync the feed.

Push your fixes to the channel
Nothing you change reaches Google or Facebook until the feed syncs again. After a fix, submit it one of these ways:
- One product — open Feed → Products → Detail and press the Resync product button.
- The whole feed — after you change settings or mapping, a banner appears at the top of the feed with Sync now. Press it to re-submit every product in the feed.
Approval status does not update the moment the sync finishes. The channel re-reviews on its own schedule — usually a few hours for Google and around 20 minutes for Facebook — so the badge can stay red for a while after a correct fix.

Still stuck on an error code, or not sure which field to change? Press Request error fix on any issue card and the chat opens with that product and error code already filled in, so we can look at your exact case. You can also reach us from the chat bubble in the bottom-right corner of any page.

Error codes: missing attributes
These are the most common rejections, and nearly all of them are solved on the Mapping fields tab.
Error code | Attribute | What it means | Fix |
|---|---|---|---|
| title | Required title is empty | Map title to your Shopify product title, or fill it in Shopify |
| price | Required price is empty or zero | Set a price in Shopify; check price is mapped |
| image link | Product has no image | Add an image in Shopify, or map image link to another image field |
| link | Product URL is empty | Check link is mapped and the product is published to a sales channel |
| availability | Stock status is empty | Map availability, or set inventory in Shopify |
| color | Apparel product has no color | Map color to your Shopify Color variant option |
| size | Apparel product has no size | Map size to your Shopify Size variant option |
| gender | Apparel product has no gender | Map gender, or set a fixed value on the General settings tab |
| age group | Apparel product has no age group | Set a fixed age group (most stores use |
| unit pricing measure | Recommended value is absent | Optional — map unit pricing measure to a Shopify weight/volume field |
| certification | Recommended value is absent | Optional — map certification if your products need one |
| — | Sent to Facebook but not in the catalog yet | Re-sync, wait ~30 minutes, confirm the product is Active in Shopify |
Not every missing attribute blocks a product.
For example, missing_item_attribute_for_product_type on size means the channel got nothing in the size attribute. Open Mapping fields, search size, set Shopify value to your Size variant option, save, and re-sync — every apparel product in the feed is corrected in one pass.

Error codes: invalid values
Here the attribute is present but the channel refused the value. Correct it in Shopify when the whole catalog is affected, or as a custom value on the final feed data when it is one product.
Error code | Attribute | What it means | Fix |
|---|---|---|---|
| price | Price is not a valid positive amount | Fix the price in Shopify |
| unit pricing measure | Unit price value is not a positive number | Fix the unit price measurement on the Shopify product |
| title | Title is over the limit and was shortened | Optional — shorten the title in Shopify |
| description | Description was auto-shortened | Optional — shorten the description in Shopify |
| description | Description is over 5,000 characters | Shorten the description in Shopify |
| mpn | MPN exceeds the allowed length | Shorten the MPN value |
| google product category | Category is not in Google's taxonomy | Pick a category from the dropdown on the General settings tab |
| image link | Image is below the minimum size | Upload an image of at least 800×800px in Shopify |
| — | Content language differs from target country | Translate the content, or split into one feed per language |
| availability | Product is marked out of stock | Update inventory in Shopify, or set availability to |
Some of these codes need no action.
text_value_truncated and condition_updated_from_detected are informational — the channel already corrected them and your products still show. Clear the blocking errors first.Error codes: account-level
These never clear from the product data. Fix them where the table says, then re-sync.
Error code | What it means | Fix |
|---|---|---|
| Google connection lost | Reconnect Google in Omega Feed |
| Facebook login is no longer valid | Press Reconnect on the issue card and sign in again |
| Google data source is missing | Reconnect Google — the data source is recreated |
| Store website is not claimed | Claim your website in Google Merchant Center |
| Website is not set in Merchant Center | Merchant Center → Settings → Business information → Website |
| Product URLs differ from your store URL | Make the Merchant Center website match your Shopify domain |
| No shipping cost configured | Merchant Center → Shipping and returns → add a shipping policy |
| Merchant Center account is suspended | Resolve the violation in Merchant Center, then request a review |
| Your account is still under review | Nothing to do — wait for the channel to finish reviewing |
| The feed's destination is not valid | Re-check the destination on the feed's General settings tab |
Some account problems are outside Omega Feed's control.
*_policy_violation) are decided by the channel, not by Omega Feed. We can show you which products are affected, but the appeal has to be filed in Merchant Center or Commerce Manager.Troubleshooting
I fixed the product but it still shows as disapproved
Approval status comes from the channel, not from Omega Feed. After you save a change, re-sync the feed and give the channel time to re-review — Google usually takes a few hours, Facebook around 30 minutes. Until then the old status stays on the row.
An issue says Omega detected but Google or Facebook did not report it
Omega checks your data before the channel reviews it, so its issues usually show up first. Fix them now — the channel applies the same rules, so you avoid a rejection instead of waiting for one. If the channel later reports the issue too, its version replaces Omega's and the badge goes away.
Feed health shows my products as ready, but they are disapproved in Merchant Center
On a data file (XML) feed, Google and Facebook do not report their review back to Omega Feed, so ready only means Omega's own check found nothing. Check the approval status directly in your Merchant Center or Commerce Manager. On an API feed, give the channel time to review after the sync — new verdicts appear in Feed health once they arrive.
Feed health doesn't count my account issue
That is on purpose. Account issues block every product at once, so they are shown in the banner at the top of the feed instead of in the counts. Fix the account issue first, then re-sync.
A product was not sent after the sync
Open the product's detail and check its sync error. Not sent: a required attribute has a value the channel does not accept means one required attribute has the wrong type of value. Find the matching Omega detected issue, correct that attribute, and re-sync — the product is sent again on the next sync.
The issue details panel has no fix buttons
Inside Feed settings → Products the panel is read-only, so that browsing a feed never changes it by accident. Open the Products page from the left menu and click the same N issues badge there to get the action buttons.
I mapped the attribute but the value is still empty
Check the Preview column on the Mapping fields row. An empty preview means the Shopify field you mapped is itself empty on your products. Open one affected product's final feed data and confirm what the Default feed value column shows — if it is blank there too, the data has to be added in Shopify first.
The same error appears on hundreds of products
That is usually a mapping problem, not a product problem. Fix it once on the Mapping fields tab instead of editing products one by one. If only some of those products need a different value, filter the products table by that error, press Select all products is filtering, and use Bulk edit or Bulk assign. If the error is account-level, one reconnect or one Merchant Center setting will clear the whole list.
A product has issues on Google but is fine on Facebook
Each channel judges your data by its own rules, and each feed can map and override attributes differently. Open the product's final feed data inside the failing feed — the values there are the ones that channel saw.
Updated on: 09/10/2026
Thank you!