Import Your Data into Bento
How to format CSV files, map fields, and safely import contacts into Bento after exporting from another platform.
You have your CSVs—now it is time to bring everything into Bento without losing context. Work through this checklist to create custom fields, import suppression lists, and load your active contacts.
Imports usually take 15–30 minutes. Move slowly and keep backup copies of your original exports until everything looks perfect inside Bento.
Download the sample CSV in Bento to see the exact headers and casing we expect. Use it as a template while cleaning your data.
What you need
- Exported CSV files from your previous ESP
- Separate files for subscribed and unsubscribed/bounced contacts
- Access to your Bento workspace
- About 30 minutes of uninterrupted focus
Recommended import order
- Create any custom fields you will map.
- Import unsubscribed/bounced contacts first (mark as unsubscribed).
- Import your active subscribers.
- Verify counts, tags, and fields.
- Test with a few known email addresses.
Step 1
Create custom fields
- Open People → Fields in Bento.
- Click Add Field, give it a friendly name, and set the key to match the CSV header (lowercase + underscores).
- Choose the correct type (text, number, date, boolean).
- Repeat for every custom column in your CSV.
Examples: `company_name`, `customer_id`, `signup_source`, `plan_tier`.
Step 2
Import unsubscribed/bounced contacts
- Go to People → Import and choose your suppression CSV.
- Select Import CSV, then choose Mark as unsubscribed.
- Map each column (email + optional fields) and review the preview carefully.
- Click Import and wait for the confirmation email.
Include bounced, blocked, or complaint contacts in this step so Bento never emails them.
Step 3
Import active contacts
- Select your main subscriber CSV.
- Choose Subscribe users as the command.
- Map all fields, double-check tag formatting, and confirm Mark as unsubscribed is unchecked.
- Launch the import and monitor the email notification for completion.
Large files process in the background. Keep the browser open until you see the “Import started” confirmation.
Step 4
Verify results
- Compare total contact counts against your original export.
- Spot-check several contacts to confirm tags, fields, and unsubscribed status.
- Review the import report email for skipped rows or formatting warnings.
Required field
| Field | Format | Example | Notes |
|---|---|---|---|
email | Valid email address | john@example.com | Email is the primary identifier and cannot be changed. |
Common optional fields
| Field | Format | Example | Purpose |
|---|---|---|---|
first_name | Text | John | Personalisation tokens |
last_name | Text | Doe | Full name display |
tags | Comma separated | customer,vip,2024 | Segmentation + automation |
created_at | ISO date | 2024-01-15 | Historical references |
subscription | Text | Pro Plan | Data enrichment (templates) |
Header formatting
Stick to lowercase headers with underscores: `company_name`, `customer_id`, `signup_date`. The importer treats `Company Name` and `company_name` as different fields.
Special columns
| Column | Purpose | Format | Example |
|---|---|---|---|
tags | Adds tags to the contact | Comma separated, no spaces | customer,newsletter,vip |
remove_tags | Removes existing tags | Comma separated, no spaces | trial,legacy-segment |
tag_as_event | Fires events for each tag | true or false | true |
Event triggers
Only use `tag_as_event = true` if you want to trigger flows immediately. Leave it empty for normal tag imports.
CSV example — correct format
| first_name | last_name | tags | company_name | |
|---|---|---|---|---|
| john@example.com | John | Doe | customer,vip | Acme Corp |
| jane@example.com | Jane | Smith | prospect,newsletter | Tech Inc |
CSV example — common mistakes
| Email Address | First Name | Last Name | Tags | Company Name |
|---|---|---|---|---|
| john@example.com | John | Doe | customer, vip | Acme Corp |
| jane@example.com | Jane | Smith | prospect;newsletter | Tech Inc |
Formatting reminders
Avoid spaces after commas, avoid alternate separators like semicolons, and keep headers lowercase with underscores.
Advanced tips
Trigger flows on import
- Set
tag_as_eventtotruealongside the tag column to fire events as contacts import.
Updating existing contacts
- If the email already exists, Bento updates fields, appends tags, and optionally removes tags listed in
remove_tags.
Troubleshooting
Import errors
- Invalid emails are skipped—fix typos and re-import those rows.
- Files over 10 MB? Split them into chunks.
- Ensure CSV is saved as UTF-8 if you have special characters.
- Remove blank trailing rows that some spreadsheets add automatically.
Missing fields or tags
- Double-check you created custom fields before importing.
- Confirm header spelling/casing matches the field key.
- For tags, make sure values use commas without spaces.
Duplicate contacts
- Bento merges by email. Clean up casing differences (
John@example.comvsjohn@example.com) or stray spaces before importing.
Counts do not match
- Review the import report. Rows with missing emails or invalid formatting are skipped.
- Duplicates collapse into a single record—expect a lower final count when duplicates existed.
After the import
Set up segments
- Use tags, fields, and engagement data to rebuild the dynamic segments you relied on before.
Recreate flows
- Translate your old automations into Bento Flows. Start with welcome journeys and re-engagement sequences.
Test everything
- Send test broadcasts to yourself.
- Validate forms route submissions correctly.
- Confirm unsubscribe links in test emails.
Import checklist
- CSV saved as UTF-8.
- Headers lowercase with underscores.
- Email column validated.
- Tags comma-separated without spaces.
- Custom fields exist in Bento ahead of time.
- Suppression file ready and imported first.
- 10-row test file available for quick validation.
Field naming cheat sheet
| ❌ Incorrect | ✅ Correct |
|---|---|
| First Name | first_name |
| Company Name | company_name |
| Phone Number | phone_number |
| signupDate | signup_date |
| User-ID | user_id |
| ZIPCode | zip_code |
Need help?
- Email support@bentonow.com
- Post in the Bento Discord
- Review import reports delivered to your inbox after each run
- Browse docs.bentonow.com for extra tutorials
Backup reminder
Keep the source exports until you have confirmed counts, tags, fields, and flows in Bento. You can always re-import or roll back if needed.
Imports are permanent—take your time, test with small files first, and keep original exports archived until you have verified everything. Once your active contacts and suppression lists are in place, focus on rebuilding segments, flows, and broadcasts that replicate your previous setup.
Need the original Markdown? Open raw file