Skip to main content
Skip to main content

How GoHighLevel Agencies Add an Advertorial Pre-Sell Step to Client Funnels

How to add an advertorial or listicle pre-sell step to a GoHighLevel funnel with a Custom Code element, tested in a real sub-account on 16 September 2026.

Landra cover — GoHighLevel Advertorials: Add a Pre-Sell Funnel Step

I ran the whole path on 16 September 2026, in a real GoHighLevel sub-account, to find out what it actually takes to put a finished advertorial inside a client funnel.

In Landra: Publish, Export HTML, "Somewhere else," Copy embed. In GoHighLevel: open the funnel step, add an element, Custom Code, Open Code Editor, paste, save, publish.

That was the entire job. The page rendered inline in the funnel step's own DOM rather than inside an iframe, and on a fresh step with no other elements it ran edge to edge with no row or section adjustments.

So GoHighLevel has no objection to hosting an advertorial. It has no name for one.

That distinction is the whole piece. Every funnel template the platform ships, and every paid niche pack we could find, opens at the ask: the opt-in form, the booking calendar, or the order form. The step that warms a cold click before the ask is missing from the vocabulary. It is not in the template library, it is not in the paid packs, and the custom-code guides and help threads we scanned are almost entirely about embedding widgets: chat, calendars, pixels, a booking iframe. Nothing at the scale of a whole page.

You add it yourself. Add it as a step inside the funnel rather than hosting it somewhere else and linking in. A step lands in the funnel's own per-step stats and keeps the visitor on one domain all the way to the ask, and those two things decide more than any build choice that comes after.

Two rows of funnel steps. The top row is what a template ships: the ask, then the order, then thank you. The bottom row adds a pre-sell page in front of the ask and leaves every step after it unchanged
Nothing after the pre-sell page changes. That is the whole edit, and it is why the step slots into a funnel that is already running.

Who GoHighLevel actually serves

Service businesses, and the agencies that run their marketing. Technology Checker's HighLevel profile, read on 16 September 2026, reports 109,442 detected domains with firmographic data on 64,439 of them. The largest industries are advertising, marketing, consulting, wellness and fitness, construction, coaching, real estate and medical practices. No ecommerce aggregate appears.

IndustryShare of profiled domainsDomains
Advertising Services6.86%3,912
Marketing Services6.83%3,897
Business Consulting6.00%3,422
Wellness & Fitness5.71%3,254
Construction5.39%3,071
Professional Training & Coaching4.90%2,796
Real Estate4.78%2,723
Medical Practices4.10%2,340

Source: Technology Checker's HighLevel technology profile, read 16 September 2026. Shares are of the 64,439 detected domains carrying firmographic data. Technology Checker detects installed technology on crawled domains, so read it as a footprint of who runs the platform, not a census of paying accounts.

GoHighLevel's own marketing points the same way. Its funnel-builder post from 23 October 2025 lists who the builder is for in this order: agencies, coaches and consultants, real estate professionals, local businesses, freelancers, and "e-commerce sellers" last (gohighlevel.com). The 2026 niche rankings agencies circulate read like a services directory too: home services (HVAC, plumbing, roofing, solar), med spas and cosmetic dentistry, real estate and mortgage, legal, insurance, financial advisors, automotive, fitness, restaurants (Net Partners, 2026). And the platform's ecommerce store is honest about its own ceiling: one independent setup guide describes it as suited to "up to a few hundred SKUs," with no app ecosystem and limited third-party logistics support (HL Growth Partner, 2026).

Scale claims come from the vendor, so read them as vendor claims: gohighlevel.com advertises "7,000,000+" users and "$5,200,000,000+" in sales facilitated in 2025 (homepage, read 16 September 2026).

Here is what that industry mix means for a pre-sell page. Appointment, quote and consultation businesses are the exact niches the advertorial was invented for. Finance and insurance advertisers have run native and advertorial-style traffic for years, and the platform write-ups aimed at them say so plainly while flagging the disclosure load that comes with it (Realize; Benly, both read 16 September 2026). A roofing quote, a med spa consult, a debt-relief call and a coaching application all share one property: the buyer has to accept that they have the problem before the form is worth filling in. That acceptance is what a pre-sell page manufactures.

What a GoHighLevel funnel template ships with

A sequence that opens at the ask. SupplyGem's roundup of GoHighLevel funnel templates, read 16 September 2026, counts roughly 400 of them, and none is an advertorial. Its separate roundup of 15 GoHighLevel landing page examples includes four physical-product pages, and none of those is an advertorial either. Paid niche packs repeat the shape.

The live GHLElite Health Supplement Funnel demo, with a black bar reading NEW VIDEO Reveals: Why Health Supplements Are Necessary above a headline that opens straight on the pitch and a video block showing three supplement tubs
The demo for GHLElite's $47 Health Supplement Funnel, fetched 16 September 2026. Three pages: this one, an order page, a thank-you page. The pitch starts in the headline.

Take GHLElite, which sells a Health Supplement Funnel at $47 and a Supplement VSL Funnel at $97 (read 16 September 2026). Both are three pages: Sales or Landing, Order, Thank You. On the live demo a black bar across the top reads "NEW VIDEO Reveals: 'Why Health Supplements Are Necessary'," and the headline underneath opens straight on the pitch: "Stop worrying about filling the gaps in your nutrition! This new supplement has you covered." Then roughly 550 to 600 words in a fixed order: benefits, "What Makes Us Different," "Science," three testimonials, and a CTA reading "Yes! I'm Ready To Get Started!" that lands on an order page quoting "$37 Per Bottle," 50% off and a 30-day guarantee.

Read that running order for what each block is doing, because the shape is the finding and there is nothing wrong with the craft.

  • "What Makes Us Different" is a comparison block. Only a reader already shopping the category asks that question. It is answering objection number four for someone who never raised objection number one.
  • "Science" is proof for a claim the page made two scrolls earlier. Proof is a risk-reducer. It reduces the risk of a decision the reader has not yet decided to make.
  • Three testimonials are a final nudge, positioned where a decided buyer needs permission rather than where an undecided one needs a reason.
  • The CTA assumes the frame. "Yes! I'm Ready To Get Started!" is a page-shaped answer to a question the page never asked.

None of that is a flaw in the template. It is a very serviceable page for a reader who arrived warm. The transferable principle is that a funnel step is defined by the state it receives and the state it hands on, and this one receives "already interested" and hands on "ready to pay." The template library has no step that receives "never heard of you" and hands on "already interested." That step is the one you are missing, and it is the only one a cold ad click needs.

The cost of skipping it is measurable at the front door. Contentsquare's 2026 Digital Experience Benchmark puts new-visitor conversion at 1.7% against 2.9% for returning visitors, with mobile at 69.9% of sessions (read 16 September 2026). Paid traffic is mostly new visitors on a phone. And they are skimming: Nielsen Norman Group's long-running reading research concluded that users read around 20 to 28% of the words on an average visit (NN/g).

One more data point, with its sampling frame stated up front. In June 2026 we archived the 50 advertorial and listicle pages then running as Facebook ads on ScrollStash's hot advertorial pages board (extracted 11 June 2026) and analyzed 44 of them. All of them were DTC consumer-product brands: footwear, sleep, supplements, pet, skincare. Zero were built on GoHighLevel, and 12 of the 44 were on Funnelish.

That set is ecommerce by construction, so it cannot tell you anything about GoHighLevel's service-business base, and a count of 50 is not a market share either way. What it does show is where the format's centre of gravity sits: on other platforms. The loop is worth naming, because it is breakable. The format is not in GoHighLevel's template library, so agencies on the platform do not build it, so it never enters the library.

Advertorial or listicle for a client funnel

Both, with the emphasis set per angle rather than per client. An advertorial carries one argument and suits a reader who has to believe a cause before they will consider a fix. A listicle carries parallel reasons and survives a skimmer, which suits a comparison or shortlist hook. The ad decides, because the page owes the ad's promise.

Two page shapes side by side. The advertorial is one chained argument running problem, cause, mechanism, then a single CTA. The listicle is three numbered reasons that each stand alone and all feed the same CTA. Each card names the ad hook it suits
The ad hook picks the format. A 'why this keeps happening' hook owes the reader an argument; a 'which one should I pick' hook owes them a shortlist.

Run a med spa client and the difference is concrete. An ad promising "why your filler keeps dissolving in four months" has opened an argument, and the page owes a cause, a mechanism and a consultation. An ad promising "7 things to check before booking any injector" has opened a shortlist, and the page owes seven checks with the consult sitting behind the seventh. Same client, same calendar step, two different pages, and picking the wrong one reads as a bait-and-switch inside three seconds.

Which is our position on the question the category keeps asking. "Advertorial or listicle, which converts better" is the wrong question at agency scale, because you are not choosing a format once, you are stocking a portfolio and choosing per angle. The agency that only builds advertorials cannot run a shortlist hook, and the one that only builds listicles has nothing for a client whose offer needs a mechanism explained. We wrote the format comparison out in full in advertorial vs listicle, and the copy mechanics in how to write a pre-sell page.

How to add an advertorial to a GoHighLevel funnel

Six steps, most of them inside the funnel builder. Build the page, get its HTML as one self-contained block, add a Custom Code element to the step, paste it into the code editor, publish and check it in a browser, then point its CTA at the next step. The path below is the one we ran on 16 September 2026, in the order the screens appear.

1. Build the pre-sell page

The Landra editor open on a car insurance roundup headlined The 5 Best Car Insurance Comparison Apps of 2026, with a photo of someone going through paperwork at a kitchen table, and a structure panel on the right listing twelve sections including methodology, roundup table, roundup winner and four roundup items
A financial-services page mid-edit, with its section structure on the right. The page gets built here before it ever meets GoHighLevel, and the export is the last step.

You can write and build the pre-sell page any way you like, including by hand in the GoHighLevel builder itself. The honest version of the DIY path: most cold-traffic advertorials run 800 to 2,000 words, scaled to how much warming the traffic needs, with a specific section order, real proof, their own images and a disclosure line. A page builder lays all of that out for you. It decides none of it, and the deciding is the expensive half. That is why the advertorial is sold as a done-for-you service priced per page, which we costed out in the advertorial agency roundup.

Landra is the other path. Give it your product or brand URL and it analyzes the brand and the products closely enough to know what is being sold and who buys it, then writes the whole optimized advertorial or listicle: headline, section order, long-form copy and images, laid out in conversion components rather than dropped on a blank canvas. You get a click-anything visual editor to refine it, mobile-responsive out of the box, and three ways out: a Landra URL, straight to Shopify, or an HTML export. That last one is the door GoHighLevel uses. Pricing as of September 2026 is Starter $19/mo, Pro $79, Pro Plus $199, with a 14-day free trial and no free tier.

2. Get the page's HTML as one self-contained block

The Landra Export HTML dialog on the Somewhere else view, with a review confirmation checkbox above a Fixed snapshot card holding a Copy embed button, an Updates automatically card holding a Copy live embed button, and a Download HTML option beneath both
Two buttons, two different long-term behaviours. The next section is entirely about which one you want.

Whatever built the page, what you need out of it is one self-contained block of markup with its styles travelling inside it, scoped so it will not argue with the funnel's own CSS. Most export paths give you that; a raw page dump with a <head> and its own <body> does not, and trimming one by hand is the slowest way to do this.

In Landra that is Publish, then Export HTML, then "Somewhere else," which gives you two forms of the same page: Copy embed (a fixed snapshot) and Copy live embed (a short loader that fetches the page at view time). Both paste into the same element. They behave differently a month later, which is the section after this one.

3. Add a Custom Code element to the funnel step

In the sub-account, open the funnel, open the step, then add an element and choose Custom Code. Use a blank step if you can. A step that already carries a section with its own padding will frame your page inside a narrower column, and the fix is to clear the row and section padding rather than to fight it inside the paste.

A blank GoHighLevel funnel step holding a single Custom HTML/Javascript element, with the Custom Code panel open on the right showing the element name field and an Open Code Editor button
The element on a blank step, in a live sub-account on 16 September 2026. Open Code Editor, on the right, is where the paste goes.

4. Paste into the code editor and save

Click Open Code Editor, paste, save. One rule decides whether this works: any script tag belongs after the wrapper div as its sibling, never nested inside it. Building Landra's export forced us to settle that ordering, because nesting is the one arrangement we have watched reliably fail here, so the fragment we hand you is already ordered wrapper-then-script and you never have to know the rule. Paste markup from anywhere else and you do. Independent GoHighLevel embed walkthroughs cover the same ground (FunnelsFlex, read 16 September 2026).

Worth knowing while you are in there: GoHighLevel documents a hydration event for custom code in funnels, which is the platform saying out loud that a funnel step finishes assembling itself in the browser. Custom scripts run against a moving target, which is why the ordering rule is not cosmetic.

5. Publish the step, then look at it in a browser

Publish the funnel and open the real URL, not the preview. Check three things: the page renders edge to edge rather than inside a narrow column, the fonts are the ones you built with, and the CTA buttons work. On our run the step rendered inline in the page's DOM and needed nothing else.

6. Point the CTA at the next funnel step

This is the step that makes a pasted page part of the funnel. Every CTA on the pre-sell page points at the next step in the same funnel: the opt-in, the calendar, the order form. Two things follow from keeping the whole path inside one funnel on one domain. The page appears in the funnel's per-step stats, so you can read where the drop happens rather than inferring it from a blended number. And the visitor's session and tracking stay continuous from the first scroll to the ask, with no cross-domain hop in the middle for an ad platform or a cookie policy to lose.

How much of GoHighLevel assumes one domain is visible in its own upsell documentation, which tells you to use V2 funnels only and to keep an order step's upsell steps on the same domain so the payment token carries between them (GoHighLevel Help, read 16 September 2026). That rule governs the order step rather than the pre-sell page, so an off-domain pre-sell page does not break the payment chain. It does tell you which way the platform is built. The step-by-step version of this path with current screenshots lives in our help article on adding a page to GoHighLevel.

Fixed snapshot or live embed

Who maintains the page after launch decides this. A fixed snapshot puts the page markup in the paste, so it changes only when you re-paste. A live embed pastes a loader that fetches the page at view time, so one push from Landra updates every funnel step it sits in. Agencies want the second. Media buyers protecting a control want the first.

A two-column comparison. The fixed snapshot paste holds font links, the whole page markup and a runtime script at roughly 32KB, changed by exporting again. The updates-automatically paste holds a stylesheet link, an empty div and a small loader script totalling a few hundred bytes, with the page fetched on view and changed by hitting Update live embed
One push reaching nine client funnels is the agency case for live. One page that cannot change under a running test is the media buyer's case for the fixed snapshot.
What you are comparingFixed snapshotLive embed
What you pasteThe page markup itself, roughly 32KB on our test pageA stylesheet link, an empty div and a short loader that fetches the page at view time, a few hundred bytes
How it updatesRe-export and re-paste into the stepEdit in Landra, hit Update live embed; every pasted step follows within about five minutes
Where the content livesIn the paste, unchanged until you change itFetched at view time from the hosted fragment
Crawler visibilityContent is in the markup you pasted into the stepContent is injected client-side after the fetch
Best forA control you do not want moving mid-testAn agency running one page across many client funnels
If the subscription lapsesThe page stays but loses its stylingThe embed stops rendering

Three notes, because each one bites.

Do not assume how either one lands in GoHighLevel's served HTML. GoHighLevel's own funnel troubleshooting FAQ notes that head and body tracking code is injected client-side, and that what you see in page source is the page data used for rendering (GoHighLevel Help, read 16 September 2026). Whether Custom Code content arrives in the initial HTML on a published step is something we have not verified, and neither should you take it on faith. Open your own published step with view-source before you make an SEO argument out of it. For a paid-traffic step this rarely matters; for a step you also want ranking, check first.

The live fragment is served as text/plain, with nosniff, on purpose. The fragment is user-authored markup, and it is served from the same origin as our own authenticated app. Serve it as text/html and a direct visit to that URL would render that markup as a document on our origin. Our publish sanitizer is a denylist that deliberately permits <style>, <form> and <svg>, so "it is sanitized" is not the same claim as "it is safe to execute here." Served as plain text, a direct visit is inert source. The loader is the only thing that ever inserts it into a page.

Your own tracking code rides inside the fragment. Head and body tracking you set on the page travels with the live fragment rather than sitting in the paste, so updating a pixel in Landra reaches every step you pasted it into, after the same push, without touching a single sub-account. Which is also the reason the pixel hygiene below matters: if the funnel already owns that pixel, take it off the page rather than shipping it twice.

Five client funnels and what the pre-sell page argues

What pays off for an agency is the pattern. The same step sits in the same position in every client funnel and does the same job: change the reader's state, then hand them to the ask. The argument inside it changes per niche, and so does what it hands to. Five worked examples, one paragraph each.

  • Financial services and insurance. The page argues a cost the reader is already paying and cannot see: the spread on a rate they never re-shopped, the coverage gap in a policy they inherited from an employer. It hands off to a quote form or a calendar. This is the vertical with the heaviest disclosure load, covered in the next section, and the one where the argument has to stay inside what the client is licensed to say.
  • Med spa and aesthetics. The page argues a mechanism: why a result faded, why one modality suits one skin type, what a consult will actually determine. It hands off to the booking calendar. Before-and-after imagery is the strongest asset here and the most regulated, so it goes through a review with the client every time.
  • Home services. The page argues urgency from evidence rather than from a countdown: what the reader can check on their own roof, in their own panel, on their own bill this month. It hands off to a quote form, usually with a photo upload. Solution skepticism is the blocker here, so the page has to win an argument before it names a fix.
  • Coaching and consulting. The page argues a diagnosis, because the buyer's real objection is that their situation is unusual. Naming the situation precisely is the whole conversion mechanic. It hands off to an application form or a calendar, and the application is doing qualification work the page should have started.
  • Ecommerce. Not where GoHighLevel's centre of gravity sits, and still a real slice of it. The page argues a problem and a mechanism, then hands off to an order form or, more often, back to the brand's own store. If the store is on Shopify the funnel question shifts entirely, and we walk that stack separately in the paid-traffic funnel guide.

Who owns the compliance lines

The advertiser does, which on a client funnel means the agency and the client together. Finance, insurance, mortgage, debt relief and health verticals carry disclosure duties that belong to whoever is making the claim, not to the tool that rendered the page. No page builder, this one included, discharges them for you.

Three loads to settle with the client and their counsel before a regulated page goes live. The finance and insurance advertising write-ups cited earlier (Realize, Benly) cover the same ground from the media-buying side.

  • Meta special ad categories. Credit, housing and employment ads are declared and restricted at the ad-account level, and the declaration constrains targeting. This is an ads-manager obligation that reaches back into what the landing page may imply about eligibility.
  • TCPA consent language on lead forms. The consent line lives next to the form, and the form is usually a GoHighLevel step rather than the pre-sell page. Which means the step that collects the number owns the language, and your pre-sell page must not make a promise the consent line then contradicts.
  • Licensing and state disclosure. Licence numbers, state availability, "not available in all states," and the standard advisory disclaimers. Client-specific, lawyer-reviewed, never templated across a roster.

Said plainly, because the line is easy to blur when a tool does a lot for you: Landra's compliance footer covers FTC advertising disclosure and testimonial-results language. That is the scope. It does not handle financial, insurance or medical compliance, and nothing in a generated page should be read as clearing a regulated claim. The agency and the client own those lines. The general advertising-disclosure floor for a pre-sell page is covered in our FTC disclosure guide.

Mistakes that break a pasted page

Six things break a pasted pre-sell step, and most of them are settled before you paste. A script nested inside the wrapper div. Padding and width left on a non-blank step. Styling that collides with the funnel's own. One Meta pixel installed twice. Optimize JavaScript left untested. And treating the page as a link-out.

  • A script nested inside the wrapper div. The failure we have hit most in our own testing, and the easiest to prevent: the script tag goes after the div, as its sibling.
  • Padding left on a non-blank step. Your full-width page ends up framed inside the template's column. Clear the row and section padding on the step instead of editing widths in the paste.
  • Styling that collides with the funnel's own. A good export scopes the page's CSS to its own wrapper so it cannot leak outward, and armours that subtree against the host page's declarations coming inward. Landra's export does both, which is why a pasted page usually looks the same in a funnel step as it did in the editor. Two things that armour cannot reach: the funnel's chrome around the block (section padding, column width, background), and a host rule that outguns it on specificity or carries !important, since the armour sits at one class on purpose so it never overpowers the page's own styles. Both are worth checking with your own eyes after you publish.
  • The same Meta pixel installed in both places. Once in the GoHighLevel funnel settings, once inside the pasted page, and every visit reports twice. Pick one owner. On a funnel step the funnel usually wins, so strip the pixel out of the page before pasting.
  • Optimize JavaScript left on without checking. GoHighLevel's funnel troubleshooting FAQ documents a setting that delays non-essential JavaScript. It is a performance feature, and it changes when anything you pasted runs. Test the step with it in the state you intend to ship.
  • Treating the page as a link-out. Hosting the pre-sell page on another domain and linking to it costs you the per-step stats and the continuous session, for no gain at all once the Custom Code element does the job.

Where to start

Pick one client, one angle, one funnel. Build the pre-sell page, paste it as a step in front of the ask that funnel already has, and read the step stats for two weeks against the same funnel without it. That comparison is the only one that settles anything, and it is cheap because the ask, the automations and the follow-up all stay exactly where they are.

If the roster is large, build live embeds from the start. The first time you fix a headline, hit Update live embed, and nine client funnels pick it up without anyone reopening a sub-account, the fixed-versus-live question answers itself. And if the client came to GoHighLevel from another funnel platform, the migration reading is in our ClickFunnels alternatives comparison, since that is the switch most of this audience already made once.

Frequently asked questions

Can you add an advertorial to a GoHighLevel funnel?

Yes. A finished advertorial pastes into a Custom Code element on a funnel step, so it becomes a step in the funnel rather than a link out to another site. We ran the path in a real sub-account on 16 September 2026: the page rendered inline in the step, not in an iframe, and on a fresh step with no other elements it ran edge to edge with no row or section changes.

How do you add custom HTML to a GoHighLevel funnel page?

Open the funnel step in the builder, add an element, choose Custom Code, click Open Code Editor, paste your markup, save, then publish the step. The element runs the markup inside the page. Keep any script tag as a sibling after your wrapper div rather than nested inside it; nesting is the one arrangement we have seen reliably fail in our own testing.

Should the pre-sell page be a funnel step or a separate link?

A step. It appears in the funnel's per-step stats, so you can read where the drop happens instead of inferring it, and the visitor stays on one domain from the pre-sell page through to the ask, which keeps session and tracking continuous. A link out to another domain renders perfectly well and costs you the measurement.

Advertorial or listicle for a client funnel?

Run both and pick per angle, not per client. An advertorial carries one argument and suits a reader who has to believe a cause before a fix, which covers most service offers. A listicle carries parallel reasons and survives a skimmer, which suits a comparison or shortlist hook. The ad decides which one, because the page has to honour what the ad promised.

Will a pasted page in GoHighLevel get indexed?

Check it on your own funnel with view-source rather than assuming. A fixed snapshot puts the content in the markup you pasted; a live embed fetches it at view time. GoHighLevel's own funnel FAQ notes that head and body tracking code is injected client-side, so the served HTML on a published step is not always identical to the page you see, and that is worth verifying before you build an SEO plan on it.

Why does my Meta pixel fire twice on the pre-sell step?

Because it is usually installed in two places at once: in the GoHighLevel funnel settings and inside the pasted page. The step loads both copies, so one visit reports as two. Pick one owner for the pixel. On a funnel step, the funnel is normally the right owner, so strip the pixel from the page before you paste it.

How much does GoHighLevel cost in 2026?

As of 16 September 2026, [GoHighLevel pricing](https://www.gohighlevel.com/pricing) lists Starter at $97/mo, Unlimited at $297/mo and Agency Pro at $497/mo, with a 14-day trial. The pre-sell page is a separate build. Landra runs a 14-day free trial, then from $19/mo, with no free tier.

Does Landra handle compliance for finance or medical clients?

No. Landra's compliance footer covers FTC advertising disclosure and testimonial-results language. Everything a regulated vertical needs on top of that, Meta special ad categories for credit, housing and employment, TCPA consent language on lead forms, licensing and state disclosure lines, belongs to the advertiser. On a client funnel that means the agency and the client, together, in writing.

Build your first page free

Paste a brand URL and Landra writes a complete advertorial or listicle landing page — copy, structure, and images — in minutes.

Try Landra free