Walkthrough

The ad said music festival. The page said beer.

A small Cape Breton brewery runs a Facebook ad for its fall music festival. People tap it and land on a homepage about spring water and IPAs. This is the full Lens setup that fixes that, done start to finish on a live site.

Walk in the Woods Brewing and the Hollow Pines Music Festival are a demo business and event made for this walkthrough. The Lens setup, the campaign and every dashboard screenshot are real.

Paper collage: a festival ad card reading "Hollow Pines Music Festival" with a "Get Tickets" button, and a soft indigo beam running cleanly into a lit landing page whose headline reads "Hollow Pines Music Festival, October 17-18".

The business

A good website, built for regulars

Walk in the Woods Brewing makes small-batch beer on 80 acres outside Baddeck. The homepage does its job for people who already know them: what's on tap, when the taproom is open, how to order. It isn't built for someone who has never heard of them and just tapped an ad.

The Walk in the Woods Brewing homepage hero: Brewed Deep in the Cape Breton Highlands.
The homepage opens on the brewery's story: "Brewed Deep in the Cape Breton Highlands."
What's On Tap section listing Trail Head IPA, Morning Fog Lager, Deadfall Stout and Berry Bramble Sour.
Then the tap list. Great for a regular. Nothing about the festival.

The ad

Hollow Pines Music Festival, October 17-18

The brewery is hosting a two-day festival: local bands on the patio stage, fire pits, and a beer brewed only for the weekend. The ad runs on Facebook with a tracking link, so Lens can tell which visitors came from it.

Square social ad: Hollow Pines Music Festival, Two days of live music in the woods, October 17-18, Baddeck, Cape Breton, Walk in the Woods Brewing, with a Get Tickets button over a string-lit forest stage.
The festival ad.

Everyone who taps "Get Tickets" arrives through this link. The tracking codes on the end tell Lens exactly which ad sent them.

The problem

The ad found the right person. The page made them start over.

Someone taps "Get Tickets" and lands on "Brewed Deep in the Cape Breton Highlands." Nothing on the first screen mentions the festival, the dates, or the bands. They came for one thing and now have to go looking for it.

Paper collage: the "Hollow Pines Music Festival" ad card with its "Get Tickets" button sends an indigo beam that shatters against a dimmed, torn landing page reading "Brewed Deep in the Cape Breton Highlands", crossed out with two paper strips.

Setup

Connect the site: scan, install, verify

Three steps. The only one that touches the website is pasting one short snippet into the site's head.

Step 1 · Add the site

Lens asks What site do you want to personalize? with walkinthewoods.foundryos.ca entered.
Enter the domain and scan.
Choose which text to personalize: 30 text blocks found, 5 of 5 slots selected, including the headline Brewed Deep in the Cape Breton Highlands.
Lens found 30 text blocks and picked 5: the hero and the closing call to action. The tap list and hours stay as they are.
Add this to your site's head tag, showing the Lens script tag with a Copy button.
Lens hands you one snippet to copy.

Step 2 · Add the tag to the site

Paste it into the page's <head>, above everything else. That's the whole install.

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Walk in the Woods Brewing — Craft Beer from the Cape Breton Highlands</title>
  <style id="foundry-lens-hide">h1,h2,h3,p{animation:foundry-reveal 0s 3s backwards}.foundry-lens-focused{opacity:1!important;animation:none!important;transition:opacity .4s ease-out}@keyframes foundry-reveal{from{opacity:0}to{opacity:1}}</style>
  <script src="https://foundryos.ca/signal.js" data-site-id="site_walkinthewoo_qzdpm" data-endpoint="https://tvcywvsnopctwxrzbjim.supabase.co/functions/v1/lens" data-api-key="sb_publishable_RWOAbNJzfk0kOtRYOs51FA_GfZMCWzF" async></script>
  <link rel="preconnect" href="https://fonts.googleapis.com">
  …
The top of the brewery page's HTML head. The two marked lines are Lens.

Step 3 · Verify

You're live! Script tag found, Correct site ID, First request received. Lens is now personalizing walkinthewoods.foundryos.ca.
Lens checks the live page, confirms the site ID and waits for the first request. "You're live!"

The campaign

Paste the ad's link. Lens fills in the rest.

The campaign starts from the ad's own link. Lens reads the tracking codes, then drafts the audience, what they're after, and the words the copy must and must not use. It rated its confidence high and said the brief would be stronger with the festival dates, which it had no way to know. So I added them.

New campaign form with the ad link pasted and the UTM fields, audience description, inferred pain and terms filled in by AI.
Paste the ad link. The tracking fields, audience and terms fill themselves in.
The same form after editing the campaign name, adding festival details to the audience and setting required terms.
Add what Lens can't know: the dates, the place, the bands, the festival ale.
Campaign created as draft: Facebook Hollow Pines Music Festival with a Generate Preview button.
Saved as a draft, ready to generate copy.
FieldWhat I setWhy
NameFacebook · Hollow Pines Music FestivalReadable in the dashboard, instead of the raw tracking codes.
AudienceLens's draft, plus the facts from the ad: Saturday and Sunday, October 17-18, the taproom in Baddeck, local bands, fire pits, the festival-only Harvest Ale.The copy can only be specific if the brief is.
Required termsHollow Pines Music Festival, live music, October 17-18, BaddeckThe phrases the ad uses, so the page repeats what the visitor just read.
Concern and forbidden termsKept Lens's drafts. Forbidden: generic music streaming, corporate venue, ticket reseller.They were right as written.

The copy

Two options per block. Pick, edit, publish.

Generate Preview wrote two options for each of the 5 blocks in about 40 seconds. Nothing goes live until you choose. I picked one per block and rewrote two myself. The AI draft is a starting point, not the final word.

Review screen showing the original headline and two AI options, with Option 1 Hollow Pines Music Festival, October 17-18 selected.
Each block shows the original and two options. Click one to choose it.
Editing an option to read Two days of live music in the woods, with a Save button.
Or edit it. Here the closing line becomes the ad's own words.
Campaign published, showing original and new text side by side for all 5 blocks.
Publish. Every block shows before and after.
BlockBeforeAfterWhy
HeadlineBrewed Deep in the Cape Breton HighlandsHollow Pines Music Festival, October 17-18Word for word the ad's headline and dates. They know they're in the right place.
Hero subheadSmall-batch organic craft beer from 80 acres of forest, spring water, and fresh highland airHollow Pines Music Festival brings Cape Breton musicians to the patio stage at Walk in the Woods taproom, plus a festival-exclusive Harvest Ale.The headline says when. This says what it is.
Hero intro editedEvery batch starts with a walk through the woods…Saturday and Sunday, October 17-18. Bring blankets or grab a seat by the fire. The beer is made here, spring water, wild ingredients, no shortcuts. The music is local.Keeps the brewery's own voice. I cut the weak last line.
Closing subhead editedLife Is Too Short for Boring BeerTwo days of live music in the woodsThe ad's own subline, repeated where the visitor decides.
Closing bodyOrder a mixed case shipped to your door…Two days of Cape Breton music on our patio. Local bands, wood fires, and Hollow Pines Harvest Ale, brewed for the festival and poured fresh at the Walk in the Woods taproom.Turns a shipping pitch into the festival pitch.

The payoff

Same link. Same page. A different first screen.

The ad click now lands on a page that picks up where the ad left off. Anyone who arrives another way still sees the normal site.

Side by side: without Lens the ad click lands on Brewed Deep in the Cape Breton Highlands; with Lens the same page reads Hollow Pines Music Festival, October 17-18.
The top of the page. The headline, subhead and intro now talk about the festival.
Side by side: without Lens the closing section reads Life Is Too Short for Boring Beer with a shipping pitch; with Lens it reads Two days of live music in the woods with the festival pitch.
The closing section. It ends on the ad's own line instead of a shipping pitch.

The proof

Lens saw the visit and knew where it came from

Within a minute the visit was in the dashboard, tied to the campaign and marked personalized.

Lens Visitors page with the Facebook Hollow Pines Music Festival visit marked Personalized, desktop, 35 seconds, 100 percent scroll.
The Visitors page: the ad visit, personalized, read to the bottom.
Overview tiles: 4 visitors, 1 active campaign, 2 profiles served, 0 conversions.
The Overview picks it up with the campaign active. One visit is a demo, not a result. Lift means something once real traffic runs and the holdback group has something to compare against.

The result

Ad, matching page, ticket

The ad did its job. Now the page does too.

Paper collage: the "Hollow Pines Music Festival" ad card, the matching landing page reading "Hollow Pines Music Festival, October 17-18", and a paper ticket stub reading "Admit One" held by a paper hand, joined by one indigo beam.
The ad, the page that matches it, and a stub that says "Admit One."

Your ad already knows why they clicked. Your page should too.

This whole setup was one snippet, one link and five blocks of copy. Your ads are already doing the hard part. Stop sending that attention to a page that makes people start over.