Google Merchant Center · Product data

    Invalid UTF-8 Encoding in Merchant Center: How to Fix It

    Shown in Google Merchant Center: Invalid UTF-8 encoding

    How do I fix "Invalid UTF-8 encoding" in Merchant Center?

    "Invalid UTF-8 encoding" means some text in your product data, usually in titles or descriptions, contains bytes that aren't valid in the encoding Google expects, so characters can't be read correctly. The fix is to save your feed file as UTF-8 (or set the data source to the correct encoding), and clean out corrupted or hidden characters at the source. Garbled text like é, ’ or � in your listings is the clearest sign.

    What this issue means

    Merchant Center supports UTF-8, UTF-16, Latin-1 and ASCII. When text arrives in one encoding but is read as another, or contains characters that aren't valid at all, Google flags the affected products. Depending on the attribute, the product may be disapproved or show with broken text.

    Typical symptoms:

    What you seeWhat it usually means
    é instead of éUTF-8 text read as Latin-1 (or converted twice)
    ’ instead of 'A curly apostrophe from Word or Google Docs double-encoded
    � (replacement character)Bytes that couldn't be decoded at all
    Invisible errorsControl characters, zero-width spaces or private-use Unicode pasted from other software

    Google also asks you to avoid invalid Unicode such as control, private-use and surrogate characters in IDs and text fields.

    Why it happens

    • Spreadsheet saved in the wrong encoding. Excel on Windows has historically saved CSV files in a regional encoding unless you choose CSV UTF-8. Accented letters, curly quotes and symbols then break.
    • Double encoding. Data converted to UTF-8 twice, often when moving between a supplier system, a PIM and a feed tool.
    • Copy-paste from Word, PDFs or web pages. Brings in smart quotes, em dashes, non-breaking spaces and hidden formatting characters.
    • Feed XML declares the wrong encoding. The first line says one encoding and the file is actually another.
    • Data source encoding setting mismatched. A file uploaded or fetched with the wrong encoding selected in Merchant Center.
    • Plugins outputting raw HTML or emoji. A WooCommerce page builder leaves shortcodes or special characters in descriptions.

    How to fix it

    1. Locate the affected products and fields. In Merchant Center, go to Products > Needs attention, filter for the encoding issue, and download the CSV. Look at which attribute is named (title, description, product type).

    2. If you upload a file (CSV, TSV, XML):

      • Excel: Use File > Save As and choose CSV UTF-8 (Comma delimited).
      • Google Sheets: Download as CSV or TSV; Sheets exports in UTF-8.
      • Text editors: In Notepad, Save As with Encoding set to UTF-8. Google's help also suggests choosing Autodetect in Merchant Center if you're unsure which encoding a file uses.
      • XML feeds: Make sure the declaration matches the real encoding. For UTF-8, the first line should be <?xml version="1.0" encoding="UTF-8"?>. If you must use Latin-1 or UTF-16, Google says to declare ISO-8859-1 or UTF-16 accordingly.
    3. Check the data source setting. In Merchant Center, open the data source's settings and confirm the encoding option matches your file. Google has a separate error for this case: when the data source contains an invalid character for the current encoding setting, change it in the source's advanced settings.

    4. Clean the source text. Re-encoding a file won't repair characters that are already corrupted (é stays é). Use find-and-replace in your store or spreadsheet:

      • é to é, ’ to ', “ and †to straight quotes
      • Remove non-breaking spaces, zero-width spaces and control characters
      • Replace emoji and decorative symbols, which Google discourages in titles and descriptions anyway

      Pasting suspect text into a plain-text editor first is a quick way to spot hidden characters.

    5. Fix it in your platform:

      • Shopify (Google & YouTube app): Shopify stores text as UTF-8, so this issue usually comes from corrupted text that was imported. Edit the product titles and descriptions directly, or re-import a clean CSV saved as UTF-8.
      • WooCommerce: Check that your database and feed plugin output UTF-8, and clean shortcodes or page-builder markup out of the fields your feed reads. Some feed plugins have an option to strip HTML and special characters.
      • Supplemental source: If you can't fix the source quickly, upload clean title or description values keyed by id.
    6. Re-fetch and verify. Trigger a new fetch of the data source and open a few fixed products in Merchant Center to confirm the text displays correctly.

    How long until it's fixed

    Google says changes may take 24 to 72 hours to appear on the Needs attention page. File-based sources update at the next fetch or upload; store apps resync edited products automatically, usually within hours.

    How to prevent it

    • Always export and import CSVs as UTF-8, and train anyone who touches product spreadsheets to do the same.
    • Avoid pasting product copy straight from Word or PDFs; paste as plain text.
    • Keep one encoding through your whole chain: supplier file, PIM, store, feed.
    • Add a check for Ã, †and � to your import QA.

    Encoding issues tend to hit multilingual and supplier-fed catalogs hardest. Mercantads can trace where the corruption enters your pipeline and fix it at the source; see our Merchant Center service or check your file with the Merchant Center feed checker.

    Fix it yourself or have us fix it

    Do it yourselfMercantads does it for you
    Find the causeFollow the steps on this pageWe audit your feed, store and account
    Make the fixEdit products, feed rules or site pages yourselfWe fix it, in bulk where possible
    ReviewsRequest the review and waitWe prepare and submit the review for you
    After it's fixedWatch for it to come backOngoing feed monitoring so it doesn't
    Talk to us
    FAQ

    Frequently Asked Questions

    UTF-8 is the safest choice. Google supports UTF-8, UTF-16, Latin-1 and ASCII, but UTF-8 handles every language and is the default for most tools.

    If the characters were already corrupted before saving, re-encoding preserves the corruption. You need to find and replace the broken sequences with the correct characters.

    Emojis are valid UTF-8, but Google discourages emoji-style characters in titles and descriptions, and some tools in your pipeline may mangle them. Remove them from product data.

    Invalid UTF-8 Encoding in Merchant Center: How to Fix It

    Tell us what Google Merchant Center is showing. We'll find the cause and fix it, so your products and ads get back to selling.