# How to Import and Segment Contacts for WhatsApp, SMS and Email

> To import and segment contacts, gather your lists into one spreadsheet, clean duplicates and phone numbers, add columns for consent, location and interests, save as CSV, then import and match the columns. After import, tag contacts by behaviour and interest and build segments from those tags, so each broadcast, SMS or email reaches only the people it suits.

Source: https://chat.or.ke/blog/how-to-import-and-segment-contacts
Published: 2026-10-20 | Updated: 2026-10-20 | Publisher: chat.or.ke

Most businesses have customer contacts scattered everywhere: an old Excel sheet, a receipt book, the owner's phone, a Google Form from last year's event. Pulling them into one clean list is the first step to messaging customers well, and segmenting that list is what stops you sending the same offer to everyone.

This guide walks business owners and marketing staff through the whole job, from messy spreadsheet to segments ready for WhatsApp broadcasts, bulk SMS or email campaigns. The steps use chat.or.ke, but the clean-up advice applies to any CRM.

## Key takeaways

- Clean before you import: one row per person, numbers in a consistent format, no duplicates.
- Record consent in a column. Only people who agreed to hear from you belong in marketing segments.
- A few well-chosen tags (location, interest, customer type) are enough to start segmenting.
- Segments let you send fewer, more relevant messages, which protects your number and your budget.
- Revisit segments every few months; people move, change interests and opt out.

## Before you start

Set aside an hour and collect what you need. You will want:

- **Every list you have**, exported to Excel or Google Sheets: past customers, enquiries, event sign-ups, loyalty cards.
- **A CRM that imports CSV files.** The [chat.or.ke CRM](https://chat.or.ke/features/crm) lets you upload a CSV, match the columns, preview the import and export again whenever you need.
- **Some idea of consent.** For each source, note how people gave you their number and whether they agreed to marketing.
- **A short list of segments you want.** For example "Westlands customers", "bought in the last 90 days", "interested in school uniforms".

## Step 1: Gather every list into one spreadsheet

Copy all your lists into one sheet with the same columns. A good starting set is: first name, last name, phone, email, location, source, consent, and one or two interest columns.

Add a "source" column before you merge, such as "Shop receipts 2025" or "Christmas fair sign-ups". It helps you judge consent later and tells you which channels bring the most customers.

## Step 2: Clean names, numbers and duplicates

Clean data is what makes segments reliable. Work through the sheet in this order:

1. **Phone numbers.** Kenyan numbers appear as 0712 345 678, 712345678, 254712345678 or +254 712 345 678. Remove spaces and dashes so each number is in one format. chat.or.ke converts numbers to the +254 international format during import, but obviously broken numbers (too short, letters in them) should be fixed or removed.
2. **Duplicates.** Sort by phone number and merge repeated rows, keeping the most complete details.
3. **Names.** Split full names into first and last name if you plan to personalise messages ("Hi Wanjiku").
4. **Empty rows and test entries.** Delete them.

A tidy list of 800 real customers beats a messy one of 2,000.

## Step 3: Record consent and opt-outs

Add a consent column and fill it honestly. Under Kenya's Data Protection Act, 2019, promotional messages need the person's consent and an easy way to opt out. The [Office of the Data Protection Commissioner](https://www.odpc.go.ke) publishes guidance for businesses.

A simple scheme works:

| Consent value | Meaning | Use for |
|---|---|---|
| yes | Agreed to offers and updates | Marketing broadcasts, SMS and email campaigns |
| service | Customer, but no marketing consent | Order updates, appointment reminders, receipts |
| no | Asked not to be contacted | Nothing; keep only so you do not re-add them |

If you are not sure how a group joined your list, treat them as "service" until they opt in. Our guide on [how to build a WhatsApp opt-in list](https://chat.or.ke/blog/how-to-build-whatsapp-opt-in-list) shows ways to ask.

## Step 4: Save as CSV and import

With the sheet clean, save it as CSV (comma-separated values). In Excel use "Save As" and choose CSV UTF-8; in Google Sheets use File, Download, CSV.

In chat.or.ke, upload the file from the contacts area, match each column in your file to a contact field (first name, phone, email and so on), and map extra columns such as location or source to custom fields. Check the preview carefully: look at a few phone numbers and names before you save. If something looks wrong, fix the CSV and import again rather than editing hundreds of contacts by hand.

## Step 5: Add tags that describe your customers

Tags are labels you attach to contacts so you can group them. Start with a handful you will actually use:

- **Location:** Nairobi CBD, Westlands, Kisumu, Mombasa.
- **Customer type:** retail, wholesale, corporate, member.
- **Interest:** the product categories people buy or ask about.
- **Status:** new lead, active customer, lapsed customer.

You can tag during import by mapping a column, or afterwards by selecting contacts and adding a tag. New customers who message you are saved as contacts automatically, so make tagging part of the conversation: when a customer in the inbox asks about school shoes, tag them "school shoes" there and then.

## Step 6: Build segments from tags and fields

A segment is a group of contacts defined by rules, such as "tagged Kisumu AND interest is baby products AND consent is yes". Segments let you target a message precisely without retagging people every time.

Here is how a Kisumu baby shop might segment its list:

| Segment | Rule | Message idea |
|---|---|---|
| New mothers, Kisumu | Tag: Kisumu, interest: newborn | New stock of newborn essentials |
| Lapsed buyers | Tag: lapsed (no purchase in 6 months), consent: yes | A "we miss you" offer |
| Wholesale buyers | Customer type: wholesale | Updated bulk price list |
| Service-only | Consent: service | Order and delivery updates only |

For the thinking behind segments, see [contact segmentation explained](https://chat.or.ke/blog/contact-segmentation-explained).

## Step 7: Send to a segment and measure

Now pick a channel and send to one segment, not your whole list. Choose the channel your segment actually reads:

- **WhatsApp:** with [WhatsApp broadcasts](https://chat.or.ke/features/broadcasts), choose a tag or segment, pick an approved template and see how many people will receive it before you send. Delivered, read and failed counts update live.
- **SMS:** for customers without WhatsApp, send [bulk SMS](https://chat.or.ke/features/bulk-sms) to a tag under your own sender ID on Safaricom, Airtel and Telkom.
- **Email:** for newsletters and longer updates, send an email campaign with merge fields and a one-click unsubscribe link.

Contacts who opted out, keep failing or never respond are filtered from bulk sends, which protects your number's reputation. Before a big WhatsApp send, read [how to send WhatsApp broadcasts without getting blocked](https://chat.or.ke/blog/how-to-send-whatsapp-broadcasts-without-getting-blocked).

## How do you keep your contact list clean?

Contact lists decay. People change numbers, move towns and lose interest, so schedule a short clean-up every quarter.

- Remove or fix numbers that repeatedly fail.
- Move people who never open or reply into a "lapsed" segment and message them less.
- Honour every opt-out immediately and never re-import people who asked to leave.
- Export your contacts now and then as a backup.

## Frequently asked questions

### What file format do I need to import contacts?

Most CRMs import contacts from a CSV file. Save your Excel or Google Sheets list as CSV, with one row per person and a header row naming each column, such as first name, phone, email and location.

### How should Kenyan phone numbers be formatted for import?

The safest format is the international one, starting with +254 followed by the nine-digit number without the leading zero. chat.or.ke converts common local formats such as 0712 345 678 into the +254 format during import, but broken numbers should be fixed first.

### What is the difference between a tag and a segment?

A tag is a label on an individual contact, such as Mombasa or wholesale. A segment is a group defined by rules that combine tags and fields, such as all Mombasa wholesale customers who agreed to marketing. Tags describe people; segments select them.

### Can I message every contact I import?

Only if they agreed to hear from you. Promotional WhatsApp, SMS and email messages need consent under the Data Protection Act, 2019, and WhatsApp may restrict numbers that message people who did not opt in. Use service-only contacts for order and appointment updates.

### How many segments should a small business have?

Start with three to six segments you will actually message, such as location, customer type and recent buyers. Add more only when you have a message that suits a narrower group. Too many segments become hard to maintain.
