## TL;DR

The sync overwrote Salesforce picklist values with HubSpot labels. Fix the field mapping to translate values both ways, restore the overwritten values, and re-sync.

## Error

```text
sync overwrote picklist values
```

## Steps

1. List the overwritten fields and their correct values Expected: you know the damage.
2. Fix the mapping: translate HubSpot labels to Salesforce API values Expected: the mapping is correct.
3. Restore the overwritten picklist values Expected: data is repaired.
4. Re-run the sync and verify Expected: values stay correct.

## When to use

- Sync overwrote picklist values
- The mapping used labels, not API values

## When not to use

- The mapping is right (then check for a second sync)
- Values match (then the issue is elsewhere)

## Tool compatibility

- CRM field mapping
- HubSpot-Salesforce sync

## Variant phrasings

### sync overwrote picklist

Map HubSpot labels to Salesforce API values, not labels.

### picklist values overwritten sync

Same: fix the value translation.

## Why it happens

Labels and API values differ, and agents map label to label. Salesforce stores the API value, so every sync corrupts it.

## Edge cases

- Restricted picklists reject unmapped values loudly; unrestricted ones accept garbage
- Map in both directions

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_P0MyjisheIoF1dh25RU1rw
