Home/Help Center/Contacts

Sales

Manage Contacts, Custom Fields and Segments

Add, tag and segment contacts, understand what is encrypted and why search still works, and build a nested AND/OR segment for a targeted broadcast audience.

By Chirag Darji · Updated 27 Aug 2026 · 8 min read

On this page
  1. Before you start
  2. Steps
  3. What you will see
  4. Settings and options
  5. Troubleshooting
  6. Why does a contact stay searchable if its data is encrypted?
  7. Can I merge duplicate contacts myself?
  8. What can a saved segment actually filter on beyond a simple tag?
Contacts in VGraple CRM: 420 contacts with tags, channel filters, saved segments and opt-in status

A contact record is the one place a customer's name, phone, conversation history, tags, custom fields and consent status live, and it is the audience every broadcast, sequence and flow reads from. This walkthrough covers adding and tagging contacts, understanding what is encrypted, and building a nested segment for a targeted audience.

Contacts: first 5 of 7 steps

  1. 1Open Contacts from the main navigation
  2. 2Add a contact manually, or let one
  3. 3Tag contacts as you work
  4. 4Add custom fields, if your business tracks
  5. 5Build a saved segment
The steps on this page, in order.

Before you start

  • Contact management is available on every plan, with contact count capped by tier: 500 on Free, 5,000 on Starter, 25,000 on Growth, unlimited on Scale.
  • You need whatever role already grants access to the Contacts module; adding, tagging and segmenting are typically available to any agent role, while custom field creation is restricted to Owner and Admin.
  • Understand that a self-serve contact merge is not a feature you can trigger yourself today; see the FAQ on merging below before assuming a button exists somewhere.
  • If you plan to import a list, read importing contacts from CSV first rather than adding contacts one at a time.

Steps

  1. Open Contacts from the main navigation. Click Contacts in the sidebar to see the full list, with tags, chat counts and quick actions.

A conversation open in the VGraple CRM inbox with stage, priority, assign, summary, snooze and resolve controls in the header

  1. Add a contact manually, or let one be created automatically. Click Add Contact and fill in name, phone and any custom fields, or simply let a contact get created the moment someone messages your WhatsApp number, submits a form, or arrives from a lead ad.

  2. Tag contacts as you work. Open any contact and apply one or more tags, useful groupings like "VIP," "Newsletter" or "Returning Customer" that you can filter and segment on later.

  3. Add custom fields, if your business tracks more than the standard ones. Under Settings, define any extra fields your contacts should carry, birthday, membership tier, preferred branch, and they appear on every contact's detail view.

  4. Build a saved segment. From the Contacts page, open the segment builder, add conditions (tag, opt-in status, last seen, appointment history and more), group them with AND or OR, and save the segment with a name for reuse as a broadcast audience.

  5. Review a contact's full cross-channel history. Open any contact to see every conversation it has had, regardless of whether it happened on WhatsApp, Instagram, Messenger or your web chat widget, in one unified view.

  6. Check consent status before a large send. A contact's opted-in status and any marketing_stopped flag from Meta's own signal are both visible on the contact detail view; see opt-in and consent for exactly what each means.

What you will see

Every contact appears in the list with its name (or phone number if no name is known), a chat count, tags, and a source-channel indicator. Opening a contact shows its full conversation history across every connected channel, tags, custom fields, and any linked lead or appointment records. A saved segment shows a live count that updates as you adjust its conditions, so you know exactly how many contacts a broadcast built from it will reach before you save.

Settings and options

Setting or fieldWhat it doesDefault
TagsFree-form labels applied to contacts for filtering and segmentingNone until created
Custom fieldsExtra fields beyond name, phone and email tracked per contactNone until defined in Settings
Segment builderNested AND/OR condition groups across 14 fields, saved for reuseNo saved segments until you create one
Source channelWhatsApp, Instagram, Messenger or web_chat; governs routing eligibilitySet automatically on contact creation
SourceReporting-only origin (WhatsApp, form, Calendly, import, manual)Set automatically on contact creation
Opted-in statusWhether the contact can receive marketing sendsTrue unless an opt-out keyword or Meta's marketing_stopped signal fires

Troubleshooting

SymptomLikely causeFix
A contact did not receive a WhatsApp broadcastIts source channel is not WhatsApp, it is opted out, or it is blockedCheck the contact's source channel and opt-in status on its detail view; a non-WhatsApp source channel excludes it from WhatsApp sends regardless of any other setting
Two records exist for what looks like the same personNo merge has happened yet for this pair; automatic merging only fires on a web chat identity matchContact support, or ask a super admin to run the duplicate-contacts cleanup tool, since self-serve merge is not available from the Contacts page
Searching a phone number returns nothing even though the contact existsThe search term does not match the stored plaintext shadow column format, most commonly a missing or different country codeSearch with the full E.164-style number including country code, matching how it was originally saved
A segment shows 0 contacts unexpectedlyA group's AND/OR logic is combined incorrectly, producing an impossible combination of conditionsReview each group individually; a common mistake is ANDing two mutually exclusive tag conditions instead of ORing them
Custom field values disappeared after an importThe CSV import mapping did not include that column, so existing values were left untouched, not necessarily deletedCheck the specific contact's detail view; custom fields not touched by an import are never cleared automatically
Contact still receives marketing messages after they said stop on WhatsAppThe keyword sent did not exactly match a recognised opt-out word, or Meta's own webhook has not yet propagatedSee opt-in and consent for the exact keyword list and how the marketing_stopped signal is honoured

Why does a contact stay searchable if its data is encrypted?

Name, phone and email are encrypted at rest, and because encryption uses a fresh random value on every write, the same phone number produces different stored ciphertext each time it is saved, which means the encrypted columns can never be matched directly in a database search. To keep search working, VGraple CRM maintains separate plaintext, lowercased shadow columns that exist purely for search and exact-match lookups; the encrypted fields remain the source of truth for everything displayed and sent to Meta.

Example

Searching "9876543210" in the Contacts list matches against the plaintext shadow column kept in sync on every write, never against the encrypted ciphertext stored in the underlying phone field itself.

Can I merge duplicate contacts myself?

Not from a self-serve tool on the Contacts page today. One specific case merges automatically: a web chat visitor mid-conversation who provides an email matching an existing contact is merged into that contact live, carrying over every conversation, tag, note and appointment. For everything else, a duplicate-contacts cleanup tool exists, but it lives under the super-admin System area and is not exposed to a regular org owner or agent. If you spot a genuine duplicate that needs merging outside the automatic web chat case, contact support (Monday to Friday, 10 AM to 7 PM IST) rather than looking for a merge button that is not part of the standard interface today.

What can a saved segment actually filter on beyond a simple tag?

Beyond tag and opt-in filters, segments support behavioural fields, whether the contact has received or opened a broadcast, whether they have been active in the last N days, and appointment-based fields, service history, completed appointment count, last or next appointment date, and whether they have ever had a specific appointment status like no-show. Every condition sits inside a group, and groups combine with AND or OR at two nesting levels, so a segment is not limited to a flat list of ANDed filters the way a single tag search would be.

Example

A clinic builds a segment for "(tagged Returning Patient OR had 2 or more completed appointments) AND next appointment does not exist," to find loyal patients who have not rebooked, as the audience for a targeted re-engagement broadcast.

Once your contacts are organised, revisit importing contacts from CSV for bulk additions, or opt-in and consent to understand exactly how STOP and START are honoured across every channel.

Frequently asked questions

Is my contact data encrypted?
Yes. Name, phone and email are encrypted at rest with AES-256-GCM, with a fresh random encryption key input on every write, so the same phone number produces different stored ciphertext each time it is saved. Separate plaintext, lowercased shadow columns exist only for search, never as the source of truth.
What is the difference between a contact's source and source channel?
Source channel is the transport a message travels on, WhatsApp, Instagram, Messenger or the web chat widget, and it governs routing, a non-WhatsApp contact is automatically excluded from WhatsApp broadcasts. Source is where the contact originally came from for reporting (WhatsApp, a form, Calendly, an import, manual entry) and never affects where a message is sent.
Can I merge two contacts that turned out to be the same person myself?
Not from a self-serve screen today. Merging happens automatically when a web chat visitor's email matches an existing contact, and otherwise runs through an admin duplicate-contacts cleanup tool restricted to super admins. A regular agent cannot trigger a manual merge from the Contacts page itself.
What fields can I build a segment on?
14 fields, including tag, opt-in status, language, last seen, created date, blocked status, whether a contact received or opened a broadcast, activity in the last N days, service history, completed appointment count, and last or next appointment.
Can I combine segment conditions with both AND and OR?
Yes. Segments support nested groups, each combining its own conditions with AND or OR, and the groups themselves combine with AND or OR at the top level.
What consent keywords does WhatsApp recognise?
Stop, stopall, unsubscribe, cancel, end, quit, optout, opt out and opt-out all opt a contact out immediately, matched case-insensitively. Start, unstop, subscribe, optin, opt in and opt-out's reverse form restore it. See opt-in and consent for the full behaviour.
Can I export my contact list as a CSV?
Not yet as a dedicated bulk contacts export; CSV export tooling currently covers leads. You can still pull a filtered contact list through a saved segment and the API.

Run your WhatsApp on VGraple CRM

Free forever plan, official Meta WhatsApp Business API, set up in 15 minutes. No card needed.