There are four ways to add contacts to Brew. Use whichever fits your workflow.Documentation Index
Fetch the complete documentation index at: https://docs.brew.new/llms.txt
Use this file to discover all available pages before exploring further.
| Method | Best for |
|---|---|
| CSV upload | One-time imports, migration from another platform, bulk additions |
| Add manually | A handful of contacts you want to add by hand |
| Sync from integrations | Continuous sync from HubSpot, Stripe, or other connected sources |
| API | Programmatic add/update from your backend |
CSV upload
The fastest way to import a lot of contacts at once. Brew handles deduplication, partial updates, and verification automatically.
Prepare your CSV
Required column:
Email, the contact’s email address
First NameLast Name
Subscribed.trueorfalse. Defaults totrueif missing.- Any custom property you’ve created in Brew
Map columns to Brew properties
For each CSV column, confirm the mapping is right. Unrecognized columns will be created as new custom properties.
Updating existing contacts
CSV upload also updates contacts that already exist.Matching
Matching
Brew matches on email address. If the email exists, the row updates the existing contact. If not, a new contact is created.
Partial updates
Partial updates
Empty cells don’t overwrite existing data. Only cells with values update the corresponding property.
Subscription status
Subscription status
- If the
Subscribedcolumn is missing, new contacts are subscribed by default - To import unsubscribed contacts, include
Subscribedwithfalse - The importer never re-subscribes contacts who have previously unsubscribed
Common issues
Duplicate contacts
Duplicate contacts
If your CSV has duplicate emails, Brew processes them in order, the last row wins. Deduplicate before uploading to avoid surprises.
Invalid email formats
Invalid email formats
Emails must be in a valid format (e.g.
name@domain.com). Invalid emails are flagged at the review step and skipped.Encoding issues
Encoding issues
Make sure your CSV is UTF-8 encoded. Garbled characters in the column-mapping screen mean the file isn’t UTF-8, re-export.
Large files
Large files
Very large CSVs can take several minutes. Split huge files into smaller batches if you want easier tracking.
Import history
Past imports appear below the upload area on the CSV Upload page, date, count, and any errors.Add manually
For a few contacts at a time. Audience → Add contacts → Add manually, then enter the email and optional properties.Sync from integrations
Connect HubSpot, Stripe, or other data integrations to keep contacts flowing into Brew automatically. New customers in Stripe or HubSpot show up in your audience without manual import.API
Programmatically create, update, or delete contacts from your backend.View API documentation
Endpoints, authentication, and code examples
Need Help?
Our team is ready to support you at every step of your journey with Brew. Choose the option that works best for you:- Self-Service Tools
- Talk to Our Team
Search Documentation
Type in the “Ask any question” search bar at the top left to instantly find relevant documentation pages.
ChatGPT/Claude Integration
Click “Open in ChatGPT” at the top right of any page to analyze documentation with ChatGPT or Claude for deeper insights.