How to Import SMS Contacts From a CSV File
Preparing Your CSV File
Before importing, clean up your CSV file to avoid errors and rejected records. The file should have one contact per row with a header row that labels each column. At minimum, you need a column for phone numbers. Optional columns include first name, last name, email address, and any custom tags you want to assign.
Phone number formatting is flexible. The platform accepts numbers with or without country codes, dashes, spaces, or parentheses. All of these formats are valid: 5551234567, (555) 123-4567, +1-555-123-4567, 15551234567. The import process normalizes all numbers to a standard format (E.164) during processing.
Example CSV Format
A well-formatted CSV looks like this:
- phone,firstname,lastname,email,tag
- 5551234567,John,Smith,john@example.com,vip
- 5559876543,Jane,Doe,jane@example.com,newsletter
Save your file with UTF-8 encoding to avoid character corruption. Most spreadsheet applications (Excel, Google Sheets) support UTF-8 export. If you are exporting from a CRM or other system, check that the export uses commas as delimiters, not semicolons or tabs.
Step-by-Step Import Process
In the SMS broadcast admin, go to the contacts section and select Import. Choose your CSV file from your computer. The platform accepts files up to several megabytes, which is sufficient for lists of hundreds of thousands of contacts.
The platform shows you the first few rows of your file and asks you to map each column to a contact field. Match the phone number column to the phone field, name columns to first name and last name, and so on. Any columns you do not map will be ignored during import.
Choose which contact list the imported contacts should be added to. You can create a new list for the import or add to an existing one. Assigning a specific list makes it easy to target these contacts in campaigns and track their performance separately from other subscribers.
The import runs as a background job. For large files, this can take a few minutes. The platform validates each phone number during import, removing invalid formats, duplicate numbers, and any numbers that are already on your suppression list. You will receive a summary when the import completes showing how many contacts were added, skipped, or rejected.
Handling Duplicates
If a phone number already exists in your contacts, the platform handles it in one of two ways depending on your settings. The default behavior is to skip the duplicate and keep the existing record. Alternatively, you can configure the import to update existing records with new information from the CSV, which is useful when you are merging data from multiple sources.
Consent Considerations
Importing contacts from a CSV does not create consent. You can only send SMS messages to contacts who have given you explicit consent to receive texts. If you are importing a list from another SMS platform where subscribers originally opted in, that consent transfers as long as the consent was for your business specifically. If you are importing contacts from a CRM, email list, or purchase database, those contacts have not consented to SMS and must opt in separately before you can text them.
Post-Import Cleanup
After importing, run a carrier lookup on the new contacts to identify and remove landlines, VoIP numbers, and disconnected numbers. This step is especially important for older lists where numbers may have changed carriers or been disconnected since they were originally collected. Cleaning the list before your first send prevents high error rates that could trigger carrier filtering.
Import your existing subscriber list and start sending SMS campaigns in minutes.
Get Started Free