Skip to main content

SF-0223 · Scenario · Medium

How to import a multi select pick list column using Data Loader?

✓ Verified by Vikas Singhal · Last reviewed 5/17/2026 · Updated for Spring '26

A multi-select picklist stores several values in one field. In Salesforce the values are concatenated with a semicolon delimiter in the underlying database (Red;Blue;Green), and Data Loader expects exactly that format on import.

The format

One CSV column, one cell per row, semicolons between the selected values:

Id,Interests__c
0035g00000ABCDE,"Cricket;Football;Music"
0035g00000ABCDF,"Reading"
0035g00000ABCDG,"Cricket;Reading;Coding"

A few rules:

  • Semicolons, not commas, between the values. Commas mean “next column” to the CSV parser.
  • Spaces around values are usually preserved — keep them out unless you genuinely want them.
  • Values must already exist in the picklist’s value set. If you write Tennis and Tennis isn’t a defined value, you’ll get a INVALID_OR_NULL_FOR_RESTRICTED_PICKLIST error (assuming the field is restricted).
  • Wrap the cell in double-quotes if it contains commas inside any value, or if your CSV parser is fussy. Excel writes them by default.

Step-by-step

  1. Prepare the CSV. One row per record. The multi-select column holds semicolon-separated values.
  2. Launch Data Loader and click Insert or Update (or Upsert).
  3. Log in to production or sandbox.
  4. Pick the target object.
  5. Select your CSV.
  6. Map columns to fields — the semicolon-delimited column maps to the multi-select picklist API name.
  7. Run. Data Loader splits the string on semicolons and stores the values.
  8. Verify in the UI. Open a record and check the multi-select field — every selected value should appear.

Common pitfalls

SymptomCause
Only one value shows upYou used commas instead of semicolons
Field is blankThe string had unknown values and the picklist is restricted
Job fails per rowOne of the values is missing from the picklist
Excel mangled the cellExcel sometimes wraps semicolon-containing cells in quotes — usually fine, but verify on save

Special cases

  • Bulk picklist value additions. If you need to add many new values before the load, use Metadata API or sf project deploy start on the picklist’s StandardValueSet or CustomField metadata.
  • Globally available picklists / global value sets behave the same way — semicolon delimited on import.
  • Multi-select on Tasks / Events works identically; no special treatment.
  • Locale-specific values. Multi-select values are stored as the master English value, not the translated one. If you see Rojo;Azul in a Spanish UI, the CSV should still hold Red;Blue.

A quick verify trick

After the load, run a SOQL query like:

SELECT Id, Interests__c FROM Contact WHERE Interests__c INCLUDES ('Cricket')
LIMIT 5

The INCLUDES operator is multi-select-aware and confirms the values were stored correctly.

Verified against: Data Loader Guide — Importing Multi-Select Picklists, Metadata API Developer Guide. Last reviewed 2026-05-17 for Spring ‘26 release.