Overview
Need to update many records at once? Instead of editing them one by one, use the CSV import to bulk update existing records. Use cases:- Update job titles for multiple people
- Change company information in bulk
- Add data to new custom fields
- Correct data errors across many records
How It Works
When you import a file containing a unique identifier that matches an existing record, Twenty updates that record instead of creating a duplicate.| If unique identifier… | Twenty will… |
|---|---|
| Matches an existing record | Update the existing record |
| Doesn’t match any record | Create a new record |
| Is missing from your file | Create a new record (with auto-generated ID) |
Step 1: Export Your Current Data
First, export the records you want to update:- Navigate to the object (People, Companies, etc.)
- Add the columns you need — click Options → Fields to show the fields you want to update
- Filter if needed — narrow down to only the records you want to update
- Click ⋮ → Export view
- Save the CSV file
Why export first? The exported file has the correct format, includes unique identifiers, and maps automatically during import.
What Gets Exported
- All visible columns in your current view
- The record’s unique identifiers (
id,email,domain) - Current field values you can modify
Step 2: Edit the CSV File
Open the exported file in your spreadsheet application (Excel, Google Sheets, etc.):- Keep the unique identifier column — don’t delete
id,email, ordomain - Update the values in the columns you want to change
- Remove columns you don’t need to update (optional, but cleaner)
- Don’t change unique identifier values — or Twenty will create new records
Example: Updating Job Titles
Exported file:Step 3: Import the Updated File
- Navigate to the object
- Click ⋮ → Import records
- Upload your edited CSV file
- Ensure the unique identifier is mapped — verify
email,domain, oridis mapped correctly - Review the field mappings
- Check for errors
- Click Confirm
Choosing the Right Unique Identifier
| Object | Recommended | Alternative | Notes |
|---|---|---|---|
| People | email | id | Email is human-readable |
| Companies | domain | id | Domain is human-readable |
| Custom objects | Any unique field | id | Use your custom unique field |
Use only ONE unique identifier. Don’t map both
email AND id. This can cause confusion and errors.Using Custom Unique Fields
If you have a custom field marked as unique (like an external ID from another system):- Include that field in your export and import
- Map it during import
- Twenty will match on that field
Step 4: Verify the Updates
After importing:- Open a few updated records
- Verify the changes were applied
- Check that no duplicate records were created
What About Fields Not in Your File?
Fields not included in your import file remain unchanged.| Your file includes… | Result |
|---|---|
email, jobTitle | Only jobTitle is updated; other fields stay the same |
email, jobTitle, phone | jobTitle and phone are updated |
Combining Updates and New Records
You can update existing records AND create new ones in the same import:Common Mistakes to Avoid
| Mistake | Problem | Result | Solution |
|---|---|---|---|
| Changing unique identifier | Changed [email protected] to [email protected] | Creates new record instead of updating | Keep unique identifiers unchanged |
| Multiple unique fields | Mapping both email AND id | Potential matching conflicts | Map only ONE unique identifier |
| No unique identifier | File only has firstName, lastName, jobTitle | All rows create new records | Always include email, domain, or id |
| Case mismatch | File has [email protected] but Twenty has [email protected] | Creates new record | Export from Twenty to get exact values |
FAQ
What if some records don't exist yet?
What if some records don't exist yet?
Records with unique identifiers that don’t match existing records will be created as new records. This lets you update and create in the same import.
Can I clear/empty a field value?
Can I clear/empty a field value?
Yes, leave the cell empty in your CSV. The import will clear that field’s value on the existing record.
What happens to fields I don't include in the import?
What happens to fields I don't include in the import?
Fields not in your import file remain unchanged on existing records. Only fields you include are updated.
Can I update relation fields (like Company)?
Can I update relation fields (like Company)?
Yes! Include the relation’s unique identifier (e.g.,
companyDomain) and map it to the relation field. The relation will be updated.How do I know which records will be updated vs. created?
How do I know which records will be updated vs. created?
During the import review step, Twenty shows you how many records will be updated vs. created based on unique identifier matches.
Can I undo a bulk update?
Can I undo a bulk update?
There’s no automatic undo. We recommend exporting your data as a backup before making bulk updates.
Best Practices
- Export first — always start from an export to ensure correct format
- Backup before updating — export your data before making bulk changes
- Test with a few records — try updating 5-10 records first before doing a large batch
- Use human-readable identifiers —
emailanddomainare easier to verify thanid - Only include necessary columns — fewer columns means less chance for errors