Shopify CSV Guide

Shopify “illegal quoting on line” errors

Do not delete quotes at random. First decide whether the problem is encoding, quote placement, or a field that should have been quoted.

Official guidance: Shopify says illegal quoting can be caused by non-UTF-8 content and may also result from a missing or stray quote. This page explains a safe debugging sequence around those causes.

Start with encoding

Shopify product CSV imports require UTF-8. If the file is not valid UTF-8, convert it from the confirmed source encoding before debugging quote placement. Curly or legacy-encoded punctuation can otherwise confuse the diagnosis.

Check whether the file is valid UTF-8 →

Then inspect the reported line

Look for a field containing a comma, line break, or double quote. A value such as Blue, Large needs quotes if comma is the delimiter.

SKU-1,"Blue, Large",19.99

Missing closing quote

SKU-2,"Blue Shirt,19.99
SKU-3,Red Shirt,24.99

The parser can treat the next physical line as part of the same field. One missing quote can therefore create several later errors.

Stray quote

SKU-4,Blue 12" Shirt,29.99

If the field is not quoted correctly, a literal quote can violate the CSV grammar expected by the importer. Do not remove it until you confirm whether it belongs in the product text.

Curly quotes are not CSV delimiter quotes

Word processors and smart-quote features can turn " into typographic characters such as opening and closing curly quotes. Shopify’s troubleshooting documentation specifically calls out quote problems and UTF-8 requirements. Re-exporting from a clean spreadsheet or text workflow may be safer than manual mass replacement.

Why the exact line number can be confusing

A multiline quoted field means a physical text line is not always the same thing as a logical CSV record. If a quote opens on one line and never closes, the error may be reported later than the character that caused it. Inspect surrounding lines too.

Safe debugging sequence

  1. Keep the original file.
  2. Confirm UTF-8.
  3. Confirm comma delimiter.
  4. Find the first broken quote state.
  5. Inspect the raw row and the row before it.
  6. Correct only the quote or field boundary you can prove is wrong.
  7. Re-run the Shopify preflight checker.
  8. Test a small import before a full product upload.

Shopify official troubleshooting →

Locate the problem row: Use the Shopify Illegal Quoting Checker.