Labels or shared audiences?

audiences contacts labels
H

Hisham

Last updated on Oct 6, 2026

Both group customers. Both can be the recipients of a WhatsApp campaign. They are still not interchangeable, and picking the wrong one is the most expensive small mistake in the product.

The rule fits in one line:

If you can point at the customers, use a label. If you can describe them, use an audience.

Side by side

Label Shared audience
What it is a sticker stored on the contact conditions stored under a name
Who puts a customer in it a person nobody — the conditions decide
When membership changes when somebody adds or removes it every time the audience is used
Can go out of date yes, silently no, there is nothing stored to be out of date
Can record a decision yes, that is its only job no
Can express "bought in the last 30 days" not durably yes
Who creates it an administrator creates the label; any agent applies it any agent saves one; an administrator shares it
Visible to the account always only when shared
Campaign recipient source yes yes, when shared
Automation condition no yes, when shared

The test

Ask: can this change without anybody touching the contact?

A customer becomes a "recent buyer" because time passed. Nobody did anything. That is an audience.

A customer becomes "VIP" because somebody decided so. There is no data that implies it. That is a label.

Three things, not two

People usually compare labels with audiences and forget the thing in the middle.

What it is How long it lasts Who else sees it
A contact filter conditions you have applied to the list you are looking at until you clear them or leave nobody
A personal audience the same conditions, saved and named until you delete it nobody
A shared audience the same conditions, saved and owned by the account until an administrator deletes it everyone

A filter is a view. It is the right tool for a question you are asking once. Saving it is what turns the view into something you can come back to, and sharing it is what makes it available to a campaign, to an automation rule, and to your colleagues. Nothing can reference an unsaved filter, because there is nothing to reference.

So the honest sequence is: filter to explore, save when you will want it again, share when something other than you needs it.

What only a label can do

Record a judgement. vip, wholesale, complaint-escalated, do-not-call, event-attendee. None of these can be worked out from your data, so no set of conditions will ever reproduce them.

A label is also the only way to pin an arbitrary set of people — the thirty contacts from a trade show, the list somebody sent you. Lynomia Chat has no static audience. Import or select those contacts and apply a label in bulk; see import contacts and bulk actions.

What only an audience can do

Stay correct. "Spent over 1,000 SAR", "has an open order", "has never written to us", "customers of one store" — each is re-answered when it is used, so there is no moment at which it is quietly wrong.

An audience is also the only one of the two that an automation rule can test. A rule can ask is this conversation's contact in audience X. There is no condition anywhere that asks whether a contact carries a particular label.

The trap that costs money

Two things that look alike and are not:

A conversation label is not a contact label. They come from the same catalogue and are stored separately. Tagging a conversation vip does not make that person a vip contact, and a campaign reads contact labels. Build a campaign to a label that only ever went on conversations and it reaches nobody.

No automation action labels a contact. An automation rule's "add label" action always labels the conversation. There is also no trigger for a contact being created or changed. So you cannot build a rule that maintains a contact label for you — which is exactly why the questions people want such a rule for ("who has contacted us?") are audience presets instead.

Which to use, by case

What you want Use
customers who bought in the last 30 days shared audience
customers with an order still open shared audience
customers who have spent above a threshold shared audience
customers of one connected store shared audience
customers who have never written to us shared audience
customers we decided are VIP label
customers who asked not to be contacted label
the thirty people from last week's event label, applied in bulk
a one-off question you will not ask again a filter, unsaved

A worked example

You want a monthly offer to good customers who are not wholesale accounts.

"Good customers" is describable: Visible spend (SAR) — more than — 1000. That is a shared audience.

"Wholesale" is a decision: your team knows which accounts those are. That is the wholesale label.

Lynomia Chat has no "exclude these" option on a campaign, so you cannot subtract the label from the audience. Add a condition to the audience instead — contact labels are a filter field, so Labels — not equal to — wholesale joined with and does it, inside the audience, once.

Both are recipient sources

A campaign takes labels and shared audiences together, and each contact receives it once however many of them they are in. So choosing correctly costs nothing at the point of sending — the cost is paid earlier, in whether the group is still right by the time you send.

Limits

  • Nothing maintains a label for you. No rule, job or schedule anywhere adds or removes a contact label.
  • Nothing writes an audience's membership onto contacts, either. There is no synchronisation in either direction.
  • A personal audience cannot be used by a campaign or a rule. Only shared ones can.
  • Label names are stored in lower case, must be at least two characters, and cannot contain spaces.
  • Deleting a label removes it from everything carrying it, with no undo. Deleting an audience removes only its conditions.

Related

If it does not work

My campaign to a label found no recipients. The label is on conversations, not contacts. Open it under Contacts → Tagged with — an empty page is the answer. Apply it to the contacts from the contacts list.

I built the filter but cannot find it tomorrow. An applied filter is not saved. Use Save as audience.

I cannot see the audience I need in the campaign form. It is personal. An administrator has to share it.

I want a rule that fires when a contact gets a label. That does not exist. Describe the same people as a shared audience and have the rule test the audience instead.