- Published
- Byline
- GoHighLevel Partners Editorial
- Filed under
- GoHighLevel Automation
GoHighLevel’s Affiliate Manager has five workflow triggers most agencies never touch. Almost every guide that exists — including HighLevel’s own onboarding flow — walks you through the one action that gets you started: adding a contact to Affiliate Manager. Nobody walks you through what happens after that affiliate makes a sale, refers a lead, or hits a coupon limit, because the triggers that fire on those events live in a different part of the workflow builder and don’t show up until Affiliate Manager is enabled with at least one campaign already created.
That gap matters because the default behavior of the biggest trigger in the set is not what most builders assume. The New Affiliate Sale trigger runs on the buyer’s contact record, not the affiliate’s — so a workflow built to congratulate or reward the affiliate will, by default, message the customer instead. This article covers all five triggers, the filters each one exposes, and the record-scope trap that breaks affiliate rewards for anyone who skips reading the fine print.
The Five Affiliate Manager Triggers
All five live under Automation > Workflows > Add New Trigger, split across the Affiliate section and the Payments section. Affiliate Manager must be enabled in Settings, and at least one affiliate campaign must exist, before most of them appear in the trigger list at all.
| Trigger | Fires when | Location in trigger list |
|---|---|---|
| New Affiliate Created | A new affiliate is added to the sub-account | Affiliate section |
| Affiliate Enrolled In Campaign | An affiliate is added to a specific campaign, manually or automatically | Affiliate section |
| New Affiliate Sale | A sale is attributed to an affiliate — one-time, recurring, or manually tracked | Affiliate section |
| Lead Created | An affiliate refers a new lead | Affiliate section |
| Coupon Redemption Limit Reached | A coupon’s maximum redemptions are used up, after the last transaction completes | Payments section |
New Affiliate Sale: the trigger everyone reaches for, and the record it actually runs on
This is the trigger most agencies want first — congratulate the affiliate, notify the customer, kick off a nurture sequence, all from one sale event. It fires for one-time purchases, recurring payments, and sales tracked manually by an admin, and it exposes four filters: affiliate, campaign, payout method status, and tax form status. The payout and tax filters are the ones worth using if you run a payout automation — you can hold a “thank you, here’s your commission” message until the affiliate’s payout method and tax form are both on file, instead of sending it to someone who can’t actually be paid yet.
The part that catches builders off guard is scope. The workflow this trigger fires commonly runs on the buyer’s contact record, not the affiliate’s. Add a standard “send email” action without thinking about it, and it goes to the customer who just bought something, not the affiliate who referred them. To actually message the affiliate, you need an affiliate-specific action — HighLevel’s own documentation points to actions like “send email to affiliate” rather than a generic contact action.
There’s a second consequence of the same record-scope issue: the trigger does not automatically switch the workflow to the affiliate’s community profile. If your agency runs a gamified affiliate leaderboard through GoHighLevel’s Communities module, a workflow built straight off New Affiliate Sale cannot reliably grant leaderboard points, because the points action needs to run against the affiliate’s record and this trigger hands you the buyer’s. HighLevel’s documentation does not spell out a first-party workaround for that specific combination — treat it as something to verify against your own account before you promise a client automated leaderboard rewards off this trigger alone.
Affiliate Enrolled In Campaign: manual adds and sign-up links both count
This trigger fires when an affiliate is added to a specific campaign — whether a team member added them by hand in the Affiliate Manager screen, or they enrolled themselves through a public sign-up form or link. Filters are limited to standard fields like campaign name and custom attributes, which is thinner than the sale trigger, but the gotcha here is about data, not scope.
Affiliate custom values — the referral link, portal link, magic login link, total revenue, commission earned — only populate reliably when the workflow that consumes them is actually triggered by this event. Build a separate workflow that tries to pull an affiliate’s referral link from a different trigger, and those fields can come back empty. If a welcome sequence needs the affiliate’s own referral link in the email body, build it off Affiliate Enrolled In Campaign specifically, not off a generic contact-tag trigger that happens to catch the same person later.
Coupon Redemption Limit Reached: it only fires at the finish line
Coupons are how agencies track affiliate sales on channels a referral link can’t reach — Instagram bios, printed materials, anywhere a clickable link doesn’t work. An affiliate’s coupon is set up from Marketing > Affiliate Manager, selecting the affiliate, opening Customize on their campaign’s referral link, switching to the Coupon tab, and generating a code at a discount level from 0% to 100%. A 0% coupon tracks attribution with no discount at all; 100% offers the service free while still crediting the affiliate.
The trigger tied to that coupon only fires once — when the maximum redemption count is hit, after the transaction that used the last redemption completes. It does not fire as you approach the limit, and HighLevel does not deactivate the coupon for you once the trigger runs; that’s still a manual step or an API call. The filters are more granular than the affiliate triggers above:
- Coupon Code — is any of / is empty / is none of / is not empty, multi-select
- Coupon Name — same operator set, multi-select
- Coupon Type — is / is not (Amount vs. Percentage)
- Redemption Limit — numeric comparisons (equals, greater than, less than, and their “or equal to” variants)
Without any filter applied, the workflow fires for every coupon on the account that reaches its limit — fine for a single always-on “coupon exhausted, notify me” workflow, but worth narrowing with Coupon Code or Coupon Name if you’re running several affiliate promotions at once and only want to act on one of them.
Routing a referred lead to the right affiliate
The Lead Created trigger fires when an affiliate refers a new lead, with an optional filter to scope it to one campaign instead of all of them. On its own it just starts a workflow — the piece that actually assigns credit is a separate action, Add Leads under an Affiliate, and it has three distinct assignment methods that solve different intake problems:
- Manual — pick a campaign and a specific affiliate from that campaign’s roster by hand. Fits admin-driven assignment or a form where staff review submissions before crediting anyone.
- Auto (attribution via URL) — reads an am_id parameter carried earlier in the funnel and credits the affiliate automatically, using either first-click or last-click attribution. Requires the parameter to actually be passed through the funnel upstream — it does nothing if nothing set it.
- Custom Mapping — pulls the am_id value from a custom field or a workflow value instead of the URL. This is the option for API integrations and hidden form fields, where the affiliate identifier arrives through a channel other than a query parameter.
Picking the wrong method is the most common reason affiliate attribution silently breaks: a funnel built to pass am_id in the URL gets nothing if the workflow action is set to Custom Mapping and expects a field that was never populated, and vice versa. Match the action’s method to how the identifier actually arrives.
New Affiliate Created: onboarding without a manual step
The simplest of the five: it fires whenever a new affiliate record is created in the sub-account, whether that happened through a sign-up form or an admin adding them directly. HighLevel’s own documentation describes its purpose narrowly — enrolling new affiliates into existing email campaigns and workflows automatically, so an admin isn’t manually adding each new affiliate to a welcome sequence. Pair it with the Enroll into Campaigns action from the same release to build a single “affiliate joins, gets added to the right campaign and the right onboarding sequence” workflow with no manual step in between.
Putting the triggers together
A workflow that actually closes the loop on an affiliate program usually needs at least three of these working together, not one in isolation: New Affiliate Created to onboard, Affiliate Enrolled In Campaign to hand the affiliate their referral link and portal access, and New Affiliate Sale — routed correctly to the affiliate’s record, not the buyer’s — to pay out the recognition. Coupon Redemption Limit Reached and Lead Created cover the two channels (coupon codes and direct referrals) that feed sales into that loop in the first place. Build them as separate, narrowly-filtered workflows rather than one workflow trying to branch across all five events; HighLevel’s own filters exist specifically so each trigger only fires for the campaign or affiliate segment it’s meant to handle, and a single sprawling workflow makes the buyer-versus-affiliate record issue much harder to catch during testing.
Frequently Asked Questions
Why didn't my affiliate get an email when they made a sale?
The New Affiliate Sale trigger runs on the buyer's contact record by default, not the affiliate's. A standard email action in that workflow sends to the customer who bought, not the affiliate who referred them. Use an affiliate-specific action, such as sending an email to the affiliate, instead of a generic contact email action.
Do I need a paid Affiliate Manager add-on to see these triggers?
HighLevel's own documentation does not state a separate paid tier for the triggers themselves. What it does require is Affiliate Manager enabled in Settings and at least one affiliate campaign already created in the sub-account — without both, most of the five triggers won't appear in the trigger list at all.
Can I fire a workflow before a coupon hits its redemption limit, as a warning?
Not with the Coupon Redemption Limit Reached trigger. It only fires once the maximum redemption count has already been used, after the transaction that used the last redemption completes. There is no separate “approaching the limit” trigger, and HighLevel does not automatically deactivate the coupon once the limit is reached.
What's the difference between Auto and Custom Mapping for affiliate lead assignment?
Auto reads an am_id parameter carried in the URL through your funnel and applies first-click or last-click attribution automatically. Custom Mapping instead reads that same am_id value from a custom field or workflow value, which fits API integrations or hidden form fields where the identifier doesn't arrive as a URL parameter. Using the wrong one for how your funnel actually passes the identifier is the most common reason attribution silently fails.
We build your GoHighLevel account for you
CRM, pipelines, funnels, SMS and automation — configured for your business, not left for you to figure out.
- Setup (one-time)$850
- Ongoing (per month)$38.80
No obligation quote · reply within 1 business day
This site is independently operated and is not officially affiliated with, endorsed by, or sponsored by HighLevel LLC. We do not receive referral commissions — this is our own flat-fee implementation service.