Contacts (Audience)

Your audience: tags, custom fields, the filter bar, saved segments, bulk actions and the contact drawer, plus adding a contact by hand.

Sidebar: Daily → Contacts. The page heading reads Audience — same screen. Everyone who has ever messaged you, plus anyone you added by hand. Tag them, set custom fields on them, build audiences, and save those audiences as reusable segments.

Add a contact by hand

  1. In the header, type a handle into the @username box. A raw channel ID works too.
  2. Click Add contact.

Most contacts arrive on their own the first time someone messages you.

Search and filter

The Filter audience panel sits under the toolbar. Everything in it combines, and a counter on the right shows N of M while a filter is active.

Searches handle or name.

Segments row

Your saved segments, as chips. Click one to apply it; click again (it shows a ×) to stop filtering by it.

Tags row

Every tag in the workspace, as chips. Click to include. Selecting more than one means "has all selected" — the line · has all selected appears to say so.

Field condition

Three controls: Field…, an operator, and a value. Operators depend on the field's type:

Field typeOperators
Textis, is not, contains, is set, is empty
Number=, ≠, >, <, is set, is empty
Yes / Nois, is set, is empty
Dateon, after, before, is set, is empty
Date & timeat, after, before, is set, is empty

is set and is empty take no value; the value box disappears for them.

Opted in

A toggle chip. On = only contacts who have granted Instagram opt-in consent.

Messaging window

Any window / 24h window open / Window closed.

Lead score

All / Hot ≥50 / Warm 20–49 / Cold <20 / Unscored. Lead score is a reserved numeric field; contacts have no score until something sets one — a flow's Increment field action, or a rule. Unscored is the honest default, not zero.

Click Clear to drop every filter at once.

Save a filter as a segment

  1. Build the filter you want.
  2. Click Save as segment (it only appears when a saveable filter is active — a segment with no conditions would mean "everyone", which the server refuses).
  3. Type a name into the inline box and press Enter (or click Save).

A segment can capture tags, one field condition, Opted in, and the messaging window — not the lead-score band or the search box, which narrow the table on screen only (a lead-score filter alone shows no Save control). Saved segments then appear as chips here, and as an audience option in the Broadcast composer.

Saving segments needs Growth or above — below it the save is refused with the broadcasts/sequences upgrade message.

Tags

Apply or remove a tag

On a row or in the drawer, use the tag field. Typing a name that doesn't exist yet and pressing Enter creates it and applies it in one step.

Manage tags

  1. Click Manage tags in the toolbar.
  2. The modal lists every tag with how many contacts carry it. From here you can:
    • Rename a tag.
    • Merge one tag into another.
    • Delete a tag.

The modal opens for everyone, including roles that cannot edit: the counts are a fact about your workspace and are worth seeing on their own.

Custom fields

Custom fields are the per-contact data you define — shoe size, plan, renewal date, whatever your business needs. They are available as {{merge_tags}} in messages, as conditions in flows and rules, and as filters here.

Create a field

  1. Click Fields in the toolbar.
  2. Enter a Label (e.g. Shoe size) and a key in snakecase (e.g. `shoesize`).
  3. Choose a type: Text, Number, Yes / No, Date, or Date & time.
  4. Click Add field.

Fields are archived, not deleted, so historical values survive.

Set a value on one contact

Open the contact drawer and edit the field inline. The input is typed to match the field — a date picker for a date, a Yes/No select for a boolean.

Bulk actions

  1. Tick the checkbox on each row you want (or use the header checkbox for all visible rows).
  2. The bulk toolbar appears, naming exactly which set is selected.
  3. With every visible row ticked, a further link offers "Select all N contacts matching this filter" — that targets the entire audience the filter resolves on the server, not just the rows loaded on this page. A highlighted bar confirms the wider scope, and "Select just the N on this page" steps back down.
  4. Choose Apply tag or Clear field.

The checkboxes are hidden entirely from roles that cannot bulk-edit, so nobody can select twenty rows and arrive at a toolbar with nothing on it.

The contact drawer

Click a row to open the full profile.

System fields (read-only)

Channel, First name, Last name, Username, Opt-in, 24h window (Open/Closed), Last interaction, Follower count. A missing name or username shows a dash; a Follower count Instagram doesn't provide reads Not available.

Custom fields

Every field you've defined, editable inline.

Pause automations for this contact

  1. Choose a duration: Until I resume, or 30 minutes / 1 hour / 3 hours / 6 hours / 12 hours / 1 day.
  2. Click Pause automations.

To undo, click Resume now. This is the same state the Inbox's Take over sets, read from the same two columns — both surfaces always agree.

This control needs the pause_agent capability, held by owner, admin and client — notably not agent. Everything else on this page needs manage_automations, held by owner, admin and agent — notably not client. This is the one page in the product where those two roles invert, and it is deliberate: a client who has to be able to say "stop replying as me, now" gets that and nothing else. The pause state is always visible to everyone; only the ability to change it is gated.

Sequences

Every live sequence is listed as its own row with its status for this contact — an active one shows "On step N · next <date>", a finished one Completed, a left one Unsubscribed.

Click Subscribe on the row you want, or Unsubscribe on an active one. This is the sharpest control on the page: it starts automated DMs going out on your account.

A contact can enter a given sequence once, ever. After they have been through it — completed or unsubscribed — the button shows a disabled Entered and they cannot be re-enrolled. Subscribing needs Growth or above.

Common questions

What is the difference between a tag and a field? A tag is a label a contact either has or doesn't. A field holds a value — text, a number, a yes/no, a date. Filter on tags for membership, on fields for values.

Why is my contact list capped? The table loads your most recent contacts up to a server page-size limit, so a very large audience may not all be listed at once — but the filter counter, saved segments and "Select all matching this filter" all resolve against the full audience on the server. (The Inbox's list is separately capped at its 200 most recent conversations, which is why its search overflow line sends you here.)

Why can't I see the Add contact button? Your role lacks manage_automations. The page explains the absence where the button would have been. See roles-and-permissions.md.

Where does lead score come from? Nothing sets it automatically. Use a flow's Increment field action or a rule to score contacts on the behaviour you care about.

Try HyperDM for free

50 free conversations a month, no card. Connect Instagram and follow the guide you just read.

Get startedNO CARD · LIVE IN 10 MINUTES · CANCEL ANYTIME