Fitment data

CSV upload

Bulk mapping from a spreadsheet export.

The CSV source is the workhorse: one row per SKU-and-vehicle claim, expanded across year ranges at import.

Columns#

fitment.csv
SKU,Years,Make,Model,Submodel,Note
BP-CER-1142,2016-2021,Honda,Civic,,Front axle only
LK-6IN-F150,2015-2026,Ford,F-150,,Not with factory tow package
AF1-2090,2018-2024,Ford,F-150,Raptor,Requires hub ring
GHI789,2015|2017|2019,Toyota,Camry,,Track use only
SKU
required. Matched against the variant SKU in Shopify, case-insensitively, whitespace trimmed.
Years
required. A single year, a hyphenated range (2010-2023), or a pipe-separated list (2015|2017|2019). Ranges are inclusive.
Make
required. Normalized before lookup, so Chevy resolves.
Model
required.
Submodel
optional. Blank means every submodel of that year, make and model.
Note
optional. Shown to the shopper on the product page and in the fitment table for that vehicle. "Requires trimming", "Not with factory tow package" and "Front axle only" belong here.

Extra columns are ignored, so you can upload a supplier export unmodified as long as the six above exist by name. Header matching is case-insensitive.

Uploading#

  1. Fitment data → Sources → Add CSV Upload the file. Files up to 50 MB are accepted; larger exports should be split.
  2. Review the import summary Rows imported, rows skipped, and every reason. Unknown SKUs and unresolvable vehicles are listed individually — this is where you find out your supplier spells it F150.
  3. Reindex The mappings are resolved into the search index. Coverage on the Dashboard updates when it finishes.

Re-uploading a file with the same name replaces that source's rows rather than appending, which is what you want for a monthly supplier refresh. Different filename means a new, additive source.

Common failure modes#

SymptomCauseFix
"SKU not found" on many rowsThe file uses manufacturer part numbers, not your SKUsAdd a translation column upstream, or map by MPN metafield instead
"Vehicle not resolved"Make/model spelling differs from the taxonomyAdd a synonym; the import re-resolves on the next run
Rows import but nothing changes on the storefrontNo reindex since the uploadRun Reindex
Fitment appears on the wrong variantSKU shared across variantsSKUs must be unique per variant for row-level mapping
Excel will eat your year ranges

2010-2023 in a spreadsheet column formatted as Date becomes something unrecognisable. Format the Years column as Text before saving, or export from your supplier's system directly to CSV.

Plan limits#

Starter allows one CSV source, Growth five, Pro and Enterprise unlimited. Google Sheets sources are unlimited on every plan — if you're bumping the CSV limit, moving a file into a sheet is a legitimate way around it and we won't pretend otherwise.

Still stuck?

Support is answered by the people who wrote this code — not a ticket queue.

Contact support