StockPrep
Metadata ยท Shutterstock

Shutterstock CSV Upload: The Exact Format, a Working Template, and How to Fix Rejected Files

Most CSV failures have nothing to do with keywords. They come from a filename that's off by one character, a header in the wrong spelling, or a spreadsheet app that silently changed the file. Here's the format, and how to find what broke.

8 min readShutterstockChecked against Shutterstock help, Sept 2026

A metadata CSV lets you write descriptions, keywords and categories for a whole batch in one file instead of typing into the Submit page photo by photo. When it works, it saves hours. When it doesn't, Shutterstock rejects the file with a generic error, and you're left comparing columns by eye.

This guide is organized around that second situation: the format first, then a table of the failures we see most often and how to fix each one.

The format Shutterstock expects

According to Shutterstock's contributor help, each row describes one file, and the file must match their sample structure exactly. If it doesn't, the uploader rejects it.

ColumnRequired?What goes in it
FilenameRequiredThe exact name of the uploaded file, including the extension
DescriptionRequiredOne factual sentence describing the image
KeywordsRequiredKeywords separated by commas, all in one cell
CategoriesRequiredOne or two categories from Shutterstock's list, separated by a comma
IllustrationOptionalYes or No
Mature ContentOptionalYes or No
EditorialOptionalYes or No

A template you can copy

Paste this into a plain text editor, replace the example row, and save it with a .csv extension:

Filename,Description,Keywords,Categories,Illustration,Mature Content,Editorial
IMG_2041.jpg,"Fishing boats moored in a calm harbor at sunrise","fishing boat,harbor,sunrise,boats,moored,calm water,morning,sea,coast,reflection,dock,nautical,travel,tranquil,nobody",Transportation,No,No,No
IMG_2058.jpg,"Aerial view of a winding river through autumn forest","aerial,river,autumn,forest,drone,landscape,fall colors,trees,nature,winding,from above,scenic,outdoors,woodland,nobody","Nature,Parks/Outdoor",No,No,No

Note the quotes. Any cell that contains a comma, like the keyword list or two categories, must be wrapped in double quotes. Otherwise every comma starts a new column and the whole row shifts.

Shutterstock's categories

The Categories column only accepts names from Shutterstock's fixed list, spelled exactly as shown. There is no "Travel" category, which catches many travel photographers. Use Buildings/Landmarks, Parks/Outdoor or Nature instead, depending on the subject.

AbstractAnimals/WildlifeArtsBackgrounds/TexturesBeauty/FashionBuildings/LandmarksBusiness/FinanceCelebritiesEducationFood and DrinkHealthcare/MedicalHolidaysIndustrialInteriorsMiscellaneousNatureObjectsParks/OutdoorPeopleReligionScienceSigns/SymbolsSports/RecreationTechnologyTransportationVintage

The upload order matters

This is the step people skip. Shutterstock's instructions are specific:

  1. Upload your photos or videos first, through the normal web upload or FTPS, and wait until they appear on the Submit page.
  2. Don't upload the CSV together with the media. It doesn't go through FTPS or the regular upload area.
  3. On the Submit page, click the CSV button at the top and upload the file there.
  4. Remove rows for files you aren't submitting this time. The CSV should describe only the current batch.
  5. After you click Submit, give the system time to process. Clicking the button again doesn't make it faster.

When the CSV gets rejected: a troubleshooting table

Shutterstock's error message rarely tells you which row or column is wrong. Go through these in order. The first ones are the most common.

SymptomLikely causeFix
Whole file rejected immediatelyHeader spelling or order doesn't match the sample, or the file was saved as .xlsxCopy the header row from the template above. Save as CSV, not as an Excel workbook.
File accepted, but some photos have no metadataThe filename in the CSV doesn't match the uploaded fileCheck the extension case (.JPG vs .jpg), and any renaming done during export from Lightroom or another editor
Keywords land in the Categories columnA cell containing commas isn't quotedWrap Description, Keywords and Categories in double quotes
Categories are ignored or the row errorsA category name isn't on the list, e.g. "Travel" or "Food & Drink"Use the exact names from the list above, including slashes and "and"
Strange characters in the descriptionThe file was saved in a non-UTF-8 encoding, or with curly quotesSave as "CSV UTF-8" and replace smart quotes with straight ones
Error about files that aren't in the submissionThe CSV has rows from an earlier batchDelete every row whose file isn't on the Submit page right now
Excel tip Excel "fixes" your data on open. It can drop leading zeros from filenames like 0012.jpg and change encoding on save. For a final check, open the CSV in a plain text editor. What you see there is exactly what Shutterstock will receive.

What goes inside the cells

The format gets the file accepted. The content determines whether anyone finds the photo afterwards. In short:

For a full method for building a keyword list, see the 4-layer keyword guide.

Skip building the CSV by hand

StockFlow writes the description, 50 keywords and categories for each photo and exports a CSV in Shutterstock's format, with categories chosen only from the official list.

Try StockFlow free โ†’