Guides / Workflow
Naming files for bulk import
The {sku}-{view}-{n} filename pattern: how deterministic naming groups photos by product, drives Amazon MAIN/PT slots and slugged filenames, and fills import files automatically.
Updated Aug 31, 2026 · 5 min read
Filenames are data
Bulk workflows live or die on identification: which photo belongs to which product, and which one is the main shot. Photolint reads that from the filename and never guesses; a name either parses or the photo is honestly listed as unidentified. That determinism is what makes a 200-photo run safe.
The grammar is three parts separated by hyphens: {sku}-{view}-{n}. MUG-BLUE-front-1.jpg parses as SKU "MUG-BLUE", view "front", sequence 1. The SKU can itself contain hyphens; the parser reads the view and sequence from the end.
What each platform gets from it
Amazon flat files expect slot-based names, so identified photos are renamed to SKU.MAIN.jpg, SKU.PT01.jpg and so on. The main or front view of each product takes the MAIN slot; remaining photos fill the PT slots in a stable order. Other platforms get clean slugged names built from the same parts.
Identification also feeds the import files in the zip: the Shopify images CSV, the Amazon image columns and the alt-text CSV are generated only from identified photos, because a guessed row in an import file is worse than a missing one.
Views worth standardizing
Use "main" or "front" for the lead shot; those views are what promotes a photo to the MAIN slot. Beyond that, pick a small vocabulary and stick to it: back, side, detail, flat, scale, packaging. Consistent views make the identify step readable at a glance and keep slot order stable across products.
What happens to camera-roll names
IMG_0231.jpg still runs through every lint check and every target; nothing blocks on naming. What it cannot do is group with a product, take an Amazon slot or enter the import files. The identify step lists such photos separately so you can rename them when convenient; any bulk-rename tool that produces {sku}-{view}-{n} works.