Eligibility attributes
An attribute is a requirement a call can carry and an agent can hold — Spanish, VIP, a particular vendor. The tab states the rule in full:
Eligibility attributes for inbound calls. A caller inherits attributes from their contact’s tags and from the number they dial; only agents holding ALL of a call’s attributes are offered it. Every shared number and vendor also gets its own attribute automatically — an agent must be given it to take that source’s calls. Assign attributes to agents under Users → Call Control.
Two things to take from that. It’s inbound only — nothing here affects an outbound campaign’s dialing. And it’s an and, not an or: a call carrying two attributes goes only to agents holding both.
What you’re making here
Section titled “What you’re making here”One thing, and the line above the table says it outright:
An attribute you add here is a contact tag. When a caller’s contact has that tag, the call can only go to an agent who has the attribute — everyone else is skipped, however free they are.
So the work runs in three steps, and the first isn’t on this screen:
- Tag the contacts in GoHighLevel — Spanish speakers get your Spanish tag, best customers get your VIP tag.
- Add an attribute here pointing at that tag, under a name your agents will recognise.
- Grant it to the agents who can handle those callers, under Users → Call Control.
Step three is the one that gets skipped and the one that decides everything: tagging a caller narrows who can help them, to whoever holds the matching attribute and nobody else.
The list
Section titled “The list”| Column | What it shows |
|---|---|
| Name | What you and your agents call it |
| Origin | Custom, Shared number, or Vendor |
| Tag | The GoHighLevel contact tag that gives a caller this attribute |
Every Custom row has a tag, because the dialog requires one. A row with an empty Tag cell isn’t one of yours — it reads applied automatically by its number or applied automatically by its vendor, because the source it belongs to applies it instead. An empty account reads No attributes yet.
Only Custom rows can be edited or deleted. The others are created for you and named after their owner — every shared number and every vendor gets one. You rename them by renaming the number or the vendor, and they disappear when it does.
Those system rows are listed rather than hidden for a reason — they answer why do this new vendor’s calls reach nobody? The attribute exists; nobody has been given it yet.
Deleting a custom one changes live routing, and the confirmation spells it out: every agent who has it loses it, callers carrying its tag stop being restricted to those agents, and Calls that were held back for agents with “{name}” stop being held back — including callers waiting in a queue right now. They can go to anyone else who is eligible. It can’t be undone; making it again means giving it back to each agent one by one.
Adding or editing one
Section titled “Adding or editing one”Add attribute in the header opens the dialog. On a Custom row the pencil opens it with that row loaded — hovering shows Edit attribute, and the bin beside it Remove attribute.
| Field | What it does |
|---|---|
| Name | What you and your agents call it (e.g. Spanish, VIP). Required |
| Tag | The GHL contact tag that gives a caller this attribute. Callers tagged with it can only reach agents who have this attribute. Required |
Both are required — the save button stays dead until they’re filled. The tag box suggests tags already in use in your connected sub-account, and takes free text for one you’re about to start using. Tags are matched exactly as written, capitalisation included, and nothing guesses the tag from the name: a typo there gives you an attribute that matches no caller at all.
Where a call’s attributes come from
Section titled “Where a call’s attributes come from”Two places. From the caller’s own tags — every attribute you create on this tab works that way, and a caller whose contact carries the tag arrives with it attached, whichever number they dialled. And from the source they came in on: every shared number and every vendor gets its own attribute automatically, and every call arriving there carries it. That one says nothing about the caller; it’s the gate on the source itself, which is why a new number or vendor reaches nobody until you hand its attribute out.
The two combine: a caller can arrive holding the number’s attribute and one of their own, and needs an agent holding both. There’s no third way in — an attribute can’t be attached to a phone number, and a number’s settings screen has no attribute picker, only the Agents card that hands out that number’s own attribute.
Giving them to agents
Section titled “Giving them to agents”An attribute does nothing until someone holds it. That’s a per-person setting: open the user under Users → Call Control and tick what they hold. For a custom attribute that’s the only door.
A source attribute has a second one: the Agents card on a shared number’s settings and on a vendor’s General tab ticks the same people from the other end, so you can hand out a new number or vendor on the spot.
How this relates to the other routing rules
Section titled “How this relates to the other routing rules”Attributes are one of three separate gates on an inbound call, and all three must pass:
- The agent is assigned to a campaign the call is eligible for — see Campaigns → General.
- The agent holds every attribute the call carries — this screen.
- If the campaign’s State-licensing routing (inbound) is on, the agent is licensed for the caller’s state — see Campaigns → Inbound. That’s a separate mechanism with its own toggle, not an attribute.
None of these apply on the outbound side, which has its own state-licensing setting on Campaigns → Outbound and ignores attributes entirely.
Helix Dialer is a product of Nelzn LLC and is not affiliated with, endorsed by, or sponsored by HighLevel, Inc. “GoHighLevel” and “HighLevel” are trademarks of their respective owner.