HLAI Experts

Guide · Custom fields

Tracking call outcomes in HighLevel with a lead disposition field

In GoHighLevel (GHL), track call outcomes in a contact custom field of the Dropdown (multiple) type, so one contact can hold every outcome from every attempt. Create it on the Contact object, because a field can't move between Contact and Opportunity once it exists. Then build smart lists that read it, one per lead source.

Rob EasonPublished

Get the object right the first time

HighLevel has two homes for a custom field. Contact fields belong to the person. Opportunity fields belong to one deal. A call outcome is about the person you rang, so it goes on the contact.

This choice is hard to undo. A field can't switch between Contact and Opportunity after it's made. If yours went on the Opportunity object, the fix is a new field on Contact.

The giveaway is a field that won't appear where you expect it. Contact custom fields work in Smart Lists and in contact workflows. If your disposition field is missing from a contact workflow, check which object it was created on.

Why it's a multiple dropdown

A contact collects more than one outcome over time. They miss the first call, miss the second, ask for a call back, then book. A single dropdown keeps only the last answer and throws away the history. HighLevel's Dropdown (multiple) type keeps them all.

In our builds, callers set each outcome after the call. No stage automation overwrites them. The one exception is the first value, new_lead, which the build sets once when a contact enters the first stage of the first pipeline, and guards so a later pipeline doesn't reset the history.

This field records what has happened to a contact. It isn't the contact's current status.

The values we use

Our value names are lowercase with underscores. That's our house style, not something HighLevel asks for, and the names matter less than everyone using the same ones.

Seven of them count unanswered attempts, no_answer_x1 through no_answer_x7, so the field shows how many tries a contact has had. Others record what a live call produced, such as call_back_later. Whatever names you choose, agree the list before callers start, and keep earlier selections when you add a new one.

Setting it up

The field takes a few minutes. Agreeing the values with the people who will use them takes longer, so do that first.

  1. Go to Settings > Custom Fields and open Fields.
  2. Click Create field and choose the Contact object.
  3. Pick Dropdown (multiple), name the field and enter the agreed outcomes as its options.
  4. Check the Live preview, then click Create custom field.
  5. Build a contact Smart List for each lead source, filtered by the disposition values your callers work from.

What the field can't tell you

It holds which outcomes a contact has had. It doesn't hold when each happened, what order they came in, or that the same outcome happened twice. If you need a dated record of every attempt, that's a separate logging job.

Smart Lists are what make the field useful day to day. A contact joins a Smart List as soon as its values match the filters, so a source list filtered by attempt count refills itself as callers log outcomes.

Rather have it set up for you?

We'll set up the disposition field, its values and the smart lists your callers work from, on the right object the first time, after a 30-minute 1:1 with Rob about how your team calls.

Book a 1:1 with Rob

Questions

Disposition field questions

Should call outcomes be a pipeline stage or a custom field?
We keep them in a contact field. A stage says where a deal is now, while the disposition field keeps every outcome a contact has had, so it shouldn't be read as one current status.
Can I change a HighLevel custom field from Opportunity to Contact?
No. HighLevel doesn't let a field switch objects after it's created. You'd make a new field on the Contact object and use that one instead.
Why use Dropdown (multiple) instead of a single dropdown?
A contact builds up more than one outcome over several calls. A multiple dropdown keeps every outcome that has applied, where a single one keeps only the latest.
Will the disposition field show when each call happened?
No. It shows which outcomes a contact has, not their order or their dates, and it can't show the same outcome twice. A dated history of every attempt needs separate logging.
How do smart lists use the disposition field?
HighLevel adds a contact to a Smart List automatically when its field values match the list's filters. We build one list per lead source, filtered by disposition values, so callers can work straight from them.
Rob Eason

Who you talk to

Rob Eason

Rob runs HLAI Experts and takes the 1:1 calls himself.

He is a HighLevel Certified Admin with the second-most reviews in HighLevel's Certified Admin Directory worldwide, all of them 5 out of 5.

He won HighLevel's Top New Subaccounts via AI Employee award in its 2025 Summer of AI Awards and taught HighLevel's official masterclass on its AI Employee.

Before HighLevel, he co-owned a 60-employee financial services firm and sold his share.

On the call he looks at your account, not a script.

5/5 across 83 reviews in HighLevel's Certified Admin Directory