Landing page matched to the ad
The hero repeats the promise of the ad the visitor clicked, so a competitor search, a LinkedIn enterprise ad and a partner referral each land somewhere that matches.
Authored by Intempt Technologies
Recipe curators
Agentic workflow
Coming soon1 step Blu runs end to end. It drafts a plan and nothing runs until you approve it.
- 1
Set up the source variants
Coming soonBlu builds a step
About this recipe
When to use it
Cited as the simplest high-impact personalization implementation there is: if the ad promised something specific, the landing page hero should say the same thing. This matches page messaging to the visitor's utm_source, utm_campaign, or referrer.
What it delivers
Personalizes landing page hero and messaging to match the ad source a visitor arrived from (utm_source, utm_campaign, referrer), closing the message-match gap between ad and page.
How you prompt this
Describe the outcome in your own words and Blu Agent maps it to this recipe, or run it by name. It drafts a plan first and nothing runs until you approve it.
Tell Blu Agent what you want
“The hero repeats the promise of the ad the visitor clicked, so a competitor search, a LinkedIn enterprise ad and a partner referral each land somewhere that matches.”
recipe.md preview
Built from the published catalog. Blu Agent's full step prompts load in your workspace when you run it.
Inputs & outputs
What the recipe needs before it runs, and what it leaves in your workspace.
Inputs
- Nothing declared beyond an Intempt workspace. Blu asks for anything else it needs as it goes.
Outputs
How the recipe runs
Blu follows the steps in order and shows you each one before anything goes live.
- 01Set up the source variantsCreate a CLIENT PERSONALIZATION on /experiences titled "Source-Based Personalization". This is the simplest high-impact personalization. Visitors from different sources (Google Ads, LinkedIn Ads, Facebook Ads, organic search, direct, partner referrals) see hero content matched to the source. ═══ PATH 1: Top-level configuration ═══ Experience type: client_personalization Variants (each binds to a source audience): - Control (audience = all: fallback): generic hero for direct / organic / unattributed traffic - Variant B (audience = "Google Ads: competitor terms"): hero matches the competitor-comparison query - Audience: UTM source = "google" AND UTM campaign CONTAINS "competitor" or "alternative" - Variant C (audience = "LinkedIn Ads: enterprise"): hero matches the LinkedIn ad's enterprise messaging - Audience: UTM source = "linkedin" AND UTM campaign CONTAINS "enterprise" - Variant D (audience = "Facebook Ads: SMB"): hero matches the Facebook ad's SMB messaging - Audience: UTM source = "facebook" AND UTM campaign CONTAINS "smb" - Variant E (audience = "Partner referral"): hero matches the partner brand and offers a partner-specific incentive - Audience: referrer CONTAINS "partner-domain.com" OR UTM source = "partner_xyz" - Variant F (audience = "Organic: branded search"): hero matches the brand-search intent - Audience: UTM source = "google" AND UTM medium = "organic" AND landing_page contains "/" (homepage) Targeting: - Pages: homepage "/" and key landing pages (/lp, /landing-*) - Devices: any - Display frequency: always (within session: source attribution sticks for the session) Metrics: - Form submitted on demo / contact / signup form per source - Click on on primary CTA per source - Conversion rate per source (existing CRM/CDP attribution metric) Schedule: continuous ═══ PATH 2: Variant HTML content (Visual Editor) ═══ Variant: Control (no DOM changes: fallback for direct/organic/unattributed traffic) Variant: B (Google Ads: competitor terms) HTML target selector: .homepage-hero Variant DOM: <section class="homepage-hero" data-variant="b" data-source="google-competitor"> <h1>Looking for an alternative to [Competitor]?</h1> <p>Here's why teams switching from [Competitor] choose [Brand]:</p> <ul class="comparison-bullets"> <li>Better [feature 1]: [outcome]</li> <li>Faster [feature 2]: [outcome]</li> <li>Lower cost at scale: [outcome]</li> </ul> <button class="primary-cta" id="hero-cta-comparison">See the comparison</button> </section> Variant: C (LinkedIn Ads: enterprise) Same structure with enterprise-targeted copy: <h1>Enterprise-grade [solution]: without the enterprise complexity</h1> <p>Trusted by Fortune 500 teams. SOC2, SAML SSO, dedicated support.</p> <button class="primary-cta" id="hero-cta-enterprise-demo">Book an enterprise demo</button> Variant: D (Facebook Ads: SMB) Same structure with SMB-targeted copy: <h1>The [solution] built for growing teams</h1> <p>Free for teams up to 5. No credit card required.</p> <button class="primary-cta" id="hero-cta-smb-signup">Start free trial</button> Variant: E (Partner referral) Same structure with partner co-branding: <h1>[Brand] + [Partner]: special offer for [Partner] customers</h1> <p>20% off your first year when you join through [Partner].</p> <img class="partner-logo" src="/partner-logos/[partner].svg" alt="[Partner]" /> <button class="primary-cta" id="hero-cta-partner-signup">Claim partner offer</button> Variant: F (Organic: branded search) Same structure with brand-search intent (visitor already knows you): <h1>Welcome: get started with [Brand]</h1> <p>You searched for us. Here's how to start.</p> <button class="primary-cta" id="hero-cta-direct-signup">Start free trial</button> The Visual Editor allows the user to refine copy, swap images, and adjust CTAs per source segment. Ensure the [Competitor] / [Partner] placeholders are populated correctly per variant. Taxonomy notes: - The canonical Users-object UTM attributes are: UTM source, UTM medium, UTM campaign, UTM content, UTM term: all standard. Plus referrer and landing_page. - These attributes are populated automatically on Session start from URL parameters and HTTP referrer header. - For source attribution to persist beyond the entry session, the platform stores the first-touch UTM values on the user record (Users.UTM source, etc.). This is the canonical pattern. - Don't over-segment: 4-6 source segments is the sweet spot. Too many segments to low traffic per variant to unmeasurable. - Combine with industry-vertical or ABM personalization for compounding effect, but order precedence carefully (per-account beats per-source beats per-industry beats default).
Install Intempt and run it
- 1
Sign up
Create a free Intempt workspace.
- 2
Connect your data
Add the sources this recipe reads from.
- 3
Ask Blu
Type /source-based-personalization in Blu once this recipe is live there.
- 4
Review and approve
Blu builds each step and waits for your OK before anything goes live.
