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
Tennisand Tennis isn’t a defined value, you’ll get aINVALID_OR_NULL_FOR_RESTRICTED_PICKLISTerror (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
- Prepare the CSV. One row per record. The multi-select column holds semicolon-separated values.
- Launch Data Loader and click Insert or Update (or Upsert).
- Log in to production or sandbox.
- Pick the target object.
- Select your CSV.
- Map columns to fields — the semicolon-delimited column maps to the multi-select picklist API name.
- Run. Data Loader splits the string on semicolons and stores the values.
- Verify in the UI. Open a record and check the multi-select field — every selected value should appear.
Common pitfalls
| Symptom | Cause |
|---|---|
| Only one value shows up | You used commas instead of semicolons |
| Field is blank | The string had unknown values and the picklist is restricted |
| Job fails per row | One of the values is missing from the picklist |
| Excel mangled the cell | Excel 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 starton 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;Azulin a Spanish UI, the CSV should still holdRed;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.