Back to Blog
Shopify

Shopify CSV Import: The Definitive Guide to 48 Columns

Shopify's product CSV has 48 columns, but most sellers only use 15. We walk through every column — from Handle and Title to Variant Inventory Policy and Image Alt — with real examples for each.

May 28, 2025Shopify11 min read

The Handle: Your Product's Backbone

The Handle column is the most important field in the entire Shopify CSV, yet it's the one sellers most often get wrong. The handle is the URL slug of your product (the part after your domain in the product page URL) and it's also how Shopify links together variants, images, and metafields. Get the handle wrong and your entire import can fragment.

Handles must be lowercase, use hyphens instead of spaces, and contain no special characters. Shopify auto-generates handles from your Title if you leave the column blank, which is usually fine — but if you're importing products from another platform, you may want to preserve SEO-friendly URLs by setting handles manually.

The critical rule: every variant row for the same product must share the same Handle. If you're importing a t-shirt in three colors, all three variant rows should have the identical handle, with the Option columns differentiating them. This is how Shopify knows they belong together.

Variants and Inventory Columns

Shopify supports up to three variant options per product (e.g., Size, Color, Material). The Option1 Name, Option1 Value, Option2 Name, Option2 Value, and Option3 columns define these. Each combination of option values is a single variant row. If a product has no variants, you still include one row with the variant columns filled in for the default variant.

The Variant Inventory Qty column controls stock levels. Set Variant Inventory Tracker to 'shopify' to track inventory in Shopify, or leave blank if you fulfill elsewhere. Variant Inventory Policy is critical — set it to 'deny' to prevent overselling when stock hits zero, or 'continue' to allow backorders. Most sellers should use 'deny' to protect customer trust.

Variant Weight and Variant Weight Unit affect shipping calculations, so get these right if you use carrier-calculated rates. Variant SKU is your internal identifier — make sure it's unique across your catalog to avoid confusion in fulfillment and reporting.

Images: Position, Alt Text, and Best Practices

Image rows are separate from product rows but linked via the Handle column. Each image gets its own row with the same Handle as the parent product, the Image Position (1 for the main image, 2 for the next, and so on), the Image Src (a public URL), and optionally an Image Alt Text for accessibility and SEO.

Alt text is frequently overlooked but valuable. It improves accessibility for screen readers, helps Google Image Search understand your products, and can include relevant keywords that support your overall SEO. Write descriptive alt text like 'Navy blue cotton t-shirt with crew neckline, front view' rather than just 'tshirt1.jpg'.

Shopify recommends images at least 2048 x 2048 pixels for zoom functionality, compressed to under 1MB each for fast loading. If your source images are huge, resize them before uploading — slow product pages hurt conversion rates and SEO rankings.

SEO and Status Columns

The SEO Title and SEO Description columns control how your product appears in Google search results. SEO Title should be under 60 characters and front-load the product name and key descriptor. SEO Description should be under 155 characters and include a benefit-oriented summary with one or two relevant keywords. Leave these blank and Shopify auto-generates them from your Title and Description — usually worse than writing them yourself.

The Status column controls whether a product is visible on your store. Use 'active' for live products, 'draft' for products you're still preparing, and 'archived' for products you want to keep in your admin but hide from customers. The Published column (which corresponds to sales channel availability) determines whether the product appears on specific channels like Online Store, Point of Sale, or Instagram.

Validate your CSV before importing. Shopify will reject the entire file if any row has malformed data — a single bad quote character or missing required field can waste an hour. Use a CSV validator or import a small test batch first to catch errors before processing thousands of products.

Ready to list faster?

Upload your first product CSV and see AI-optimized, platform-ready listings in minutes.

Get Started Free