What Is a Smart Website? Pages That Adapt to the Ad That Brought You Here
Here is an experiment you can run this afternoon. Open your ad accounts, pick your five best performing ads, and click each one as if you were a stranger. Then look at the page you land on. In my experience, in nine cases out of ten, the page does not continue the conversation the ad started. The ad promised a fast quote for a specific problem; the page is the homepage, with a slider, a mission statement and a menu with eleven entries. The ad spoke to a wholesaler; the page speaks to consumers. The ad was in the informal register that works on LinkedIn; the page reads like a brochure from 2014. You paid for the click. The page threw it away. I have spent a large part of the last decade fixing this by hand, one landing page at a time, and at some point I stopped and asked why the website could not simply do it itself. That question is what I now call a smart website, and this article is the long version of what I mean by it, how it works, what it deliberately does not do, and why I think it is the way every business site will be built within a few years.
The afternoon experiment
Here is an experiment you can run this afternoon. Open your ad accounts, pick your five best performing ads, and click each one as if you were a stranger. Then look at the page you land on.
In my experience, in nine cases out of ten, the page does not continue the conversation the ad started. The ad promised a fast quote for a specific problem; the page is the homepage, with a slider, a mission statement and a menu with eleven entries. The ad spoke to a wholesaler; the page speaks to consumers. The ad was in the informal register that works on LinkedIn; the page reads like a brochure from 2014.
You paid for the click. The page threw it away.
I have spent a large part of the last decade fixing this by hand, one landing page at a time, and at some point I stopped and asked why the website could not simply do it itself. That question is what I now call a smart website, and this article is the long version of what I mean by it, how it works, what it deliberately does not do, and why I think it is the way every business site will be built within a few years.
One page for everyone is a compromise nobody chose
Think about how a typical company website comes to exist. Somebody writes a brief. An agency or a freelancer builds a set of pages. The copy on each page has to work for every possible visitor at once: the person who has never heard of you, the person comparing you with two competitors, the existing customer looking for the support number, the journalist, the job applicant, the buyer from a trade fair and the buyer from a Google search. So the copy is written to offend nobody and to speak to nobody in particular. That is not a failure of the copywriter. It is what the brief asked for.
Then marketing starts running ads. And ads, if they are any good, are the opposite of that. A good ad is specific. It names one problem, one audience, one promise. The whole discipline of paid media is about narrowing, about finding the message that makes one segment stop scrolling. So you have a funnel with a very sharp top and a very blunt landing.
The industry's answer to this has been the landing page: a separate page per campaign, built outside the main site, often in a page builder tool that is a second CMS with its own login, its own hosting bill and its own way of breaking. Landing pages work, and I have built hundreds of them. But look at what they cost. Every campaign needs a new one. They drift out of sync with the main site's design and claims. They are orphans in search. They usually strip out the navigation, so the visitor who wants to know more has nowhere to go. And the moment the campaign ends, they rot.
What I wanted was the benefit of a landing page, a page that continues the ad, without the tax of maintaining a parallel website. That means the main site itself has to be able to change what it says depending on why you arrived. Which is the whole idea.
What message match actually is, and what it is worth
Before the mechanics, the reason it matters. Message match is a plain concept: the page a visitor lands on should repeat, in words and in substance, what the ad promised. Same headline idea, same offer, same tone, same audience. When it does, the visitor's brain registers "yes, right place" in under a second and reads on. When it does not, they get the small jolt of "hang on, is this the same thing?" and a large share of them leave.
I have measured this enough times to be boring about it. On accounts where I have replaced a generic landing with a matched one, and changed nothing else, the conversion rate on that traffic has typically moved somewhere between a third and double, with the bigger lifts on B2B services where the generic page was furthest from the ad. Google rewards it as well through the landing page experience component of Quality Score, which lowers what you pay per click, and Meta's relevance signals do a version of the same. So message match is not a nice to have. It is the difference between a campaign that pays and one that does not, and it is usually the cheapest lever left in an account that has already been optimised at the bidding level.
I wrote about the wider framework for this in the message market model fit piece, and the summary is that the message has to fit the market and the model before you spend a pound. A smart website is the mechanism that lets you keep the message fitting the market on the page, not just in the ad.
The model: canonical plus variants
Here is the shape of a smart website, from the outside in.
There is one canonical version of every page. That is the version search engines index, the version a visitor gets when they type your domain into a browser, and the version anyone gets when the site has no reason to show them anything else. It is a proper page, complete, well written, and it stands on its own. This matters and I will come back to why.
Then, for the pages that matter, there are variants. A variant is the same page with certain content bits swapped: the headline, the opening paragraph, the hero image, the proof section, the call to action, maybe the order of sections. A variant exists because a specific ad, or a specific audience, or a specific stage in the journey needs the page to say something more precise than the canonical version can.
The site decides which variant to show based on why you arrived. That is the whole trick. Not who you are, why you arrived.
Why you arrived: the campaign parameters
Every ad platform lets you append parameters to the URL a click goes to. Most people know them as UTM tags, and most people use them only so that analytics can report on which campaign a visit came from. I wrote a whole guide to using them properly years ago and it is still one of the most read pieces on this site.
A smart website reads those same parameters and treats them as a request. The campaign, the ad group, the creative and a small custom parameter together say: this visitor clicked the ad that promised fast quotes for warehouse racking to logistics managers. The site looks up whether a variant of the landing page exists for that intent. If it does, it renders that variant. If it does not, it renders the canonical page. No guesswork, no inference, no third party data. The ad and the page are written together, as a pair, and the URL is the contract between them.
This is the part that I think is genuinely new, and it is the part I am building first. Rather than creating a landing page and then creating an ad that points at it, you create the pair in one place. You write the ad's promise and the page's continuation of that promise side by side, and the system gives you the URL to put in the ad. One object, one URL, one set of conversion numbers. When you change the offer you change it once.
Remembering, but only with permission
The first visit is the easy case. The visitor arrived with parameters, you matched a variant, done. The interesting case is the second visit.
A logistics manager clicks your LinkedIn ad on Tuesday, reads the racking page, and leaves. On Thursday they remember you, type your domain into the browser, and land on the homepage. What should the homepage say?
The lazy answer is "the same as for everyone". The smart answer is "the version that continues Tuesday's conversation". The homepage hero talks about warehouse fit outs rather than the generic tagline. The case study on the homepage is the logistics one. The call to action is the quote form they saw before, not the newsletter.
To do that the site has to remember that this visitor was interested in racking. And here is where I draw a hard line that a lot of the personalisation industry does not. The site remembers only if the visitor has consented, and it remembers in a first party cookie that holds the interest and nothing else. Not a user ID. Not a fingerprint. Not a profile stitched together from other sites. A small value that says "racking" and the variant they saw, set after they clicked accept on a consent banner that explains exactly that, and deleted when they say so or when the cookie expires.
If they have not consented, the site shows the canonical page. It does not degrade, it does not nag, it does not try to work out who they are from their IP address or screen size. Canonical is the default and it is a good page. Consent unlocks continuity, and continuity is the whole benefit, so I have found that the honest explanation on the banner gets accepted far more often than the usual legalese wall. People are perfectly happy to be remembered by a site that tells them plainly what it will remember.
I went deep on the ethics and the mechanics of this in privacy first growth hacking, and the short version is that the line between helpful and creepy is whether the visitor could predict what you know about them. Interest from an ad they clicked, stored with permission, is predictable. Anything else is not.
Testing is not a feature, it is the architecture
Once a page can render different content for different reasons, A/B testing stops being a separate tool you bolt on. It is the same mechanism with one more input.
Every variant on a smart website can itself have alternatives. The racking page might have two headlines being tested. A visitor who matches the racking variant is assigned one of the two, the assignment is stored alongside the interest in that same consent cookie so it stays sticky across sessions, and the conversion event is recorded against the exact combination they saw: which intent, which variant, which alternative. No script injected from a testing vendor that flickers the page, no sample size calculator in a separate tab, no losing the assignment when the visitor comes back on another day.
The reporting follows from that. For every intent you can see how many people arrived, how many converted, and which alternative won, with the statistics done properly. I have written about why the statistics matter in the guide to digital marketing testing methods, and the point I keep making is that most tests are declared winners far too early. Built in testing lets the system refuse to call a winner until the numbers justify it, rather than relying on a marketer under pressure to hold their nerve.
The consequence for the business is simple. The site gets better every month, per audience, on evidence, without anyone redesigning anything.
Where the content lives, and why there is no CMS
This is the part that surprises people, so let me be precise. A smart website has no content management system in the WordPress sense. There is no admin with a page tree, no visual builder, no plugin directory.
Content on a smart website lives as structured bits. A headline is a bit. An opening paragraph is a bit. A proof block with a quote, a name and a logo is a bit. A call to action with its label, its target and its supporting sentence is a bit. Pages are compositions of bits, and variants are compositions that swap some of them. The site is a Ruby on Rails application and the bits are rows in a database with a schema, which sounds dull and is in fact the reason the whole thing is possible. A page builder stores blobs of HTML. You cannot sensibly say "give me the racking variant of this page" to a blob of HTML. You can to a set of structured bits.
So how does the owner change the copy? Through the client portal, in plain language. You open the page, point at the bit, and describe the change: "make this headline speak to logistics managers and mention the ten day lead time". The AI drafts it in the brand voice it has been trained on from the rest of the site, you see the before and after, you approve or you edit and approve, and it goes live. Images work the same way with a brief. Nobody logs into a CMS. Nobody phones the agency for a two line change. And every change is recorded, with who approved it and when, which is a compliance point as much as a convenience.
I want to be clear about the boundary here. AI drafts. A person approves. Nothing on a smart website is published by a model without a human clicking a button, and that is not a limitation I expect to remove. The value of AI in this loop is that the tedious part, writing seven variants of the same headline for seven audiences, takes minutes instead of a day. The judgement about which one goes live stays where it belongs.
Search engines, canonical tags and the cloaking question
The first question any competent SEO asks when I describe this is: is that not cloaking? Showing one page to Google and a different page to users has been a penalty offence for twenty years, so it is the right question.
The answer is no, and the reasons are structural, not a matter of hoping nobody notices.
First, the canonical page is a real page and it is what search engines see. Crawlers arrive without campaign parameters and without a consent cookie, so they get the canonical version, exactly as a first time visitor typing the URL would. There is no special treatment for bots in either direction.
Second, every variant carries a canonical tag pointing at the canonical URL, and the core content, the substance of what the page is about, the product, the service, the claims, the pricing, is the same on every variant. Variants change emphasis, tone, order and examples. They do not change what the page is. A variant of the racking page is still the racking page. That is the same principle Google has explicitly blessed for years in the context of A/B testing: vary the presentation, keep the substance, canonicalise, and you are fine.
Third, campaign parameters are excluded from indexing the way they should be anyway, so no variant URL ever competes with the canonical in search results.
The net effect is that the canonical site is, if anything, better for search than a conventional site, because all the campaign energy that used to be spent on orphaned landing pages now improves pages that are actually indexed. I wrote about how search is fragmenting into AI answers and zero click results in the piece on SEO, AIO, GEO and AEO, and one of the conclusions there is that clear, well structured canonical pages are exactly what the AI search layer wants to cite.
What a smart website refuses to do
I have found it useful to say this part out loud, because "personalisation" has a bad reputation and it earned it.
A smart website does not fingerprint. It does not combine screen size, fonts, time zone and a dozen other signals into a shadow identifier so it can recognise you without a cookie. That is a technique, it works, and I will not build it.
It does not guess who you are. It does not infer gender, age, income or anything else from your behaviour and change the page based on the guess. Every mechanism I have described keys on why you arrived, meaning a campaign you clicked or an interest you consented to have remembered. Never on who the system thinks you might be.
It does not store personal data in the personalisation layer. Name, email and anything else you give the site through a form go where they belong, into a CRM or an order system with its own consent and its own purpose. The variant engine never sees them and does not need them.
It does not buy or borrow data. No third party audience segments, no enrichment services, no "we know this IP belongs to a company in Hamburg" tricks. If you want the site to speak to logistics managers, you run an ad for logistics managers and the site continues that ad. The audience definition lives in the ad platform, where it is already subject to that platform's consent framework, and the site simply respects the hand off.
I am not describing these limits reluctantly. They are the reason the approach works in Europe at all, and they are the reason it will keep working when the next round of regulation lands. And in a decade of doing this I have never once seen inferred personalisation beat a plain, honest continuation of the thing the visitor clicked.
A worked example: an ecommerce shop
Let me make it concrete. Say you run a shop selling garden furniture. Real catalogue, a few hundred products, a design led brand, selling across Germany and Austria.
Your canonical homepage is what it should be: a beautiful seasonal hero, the main categories, a proof strip with reviews, a newsletter box. It ranks, it converts cold traffic reasonably, and you would not change it.
Now it is April and you are running three campaigns. On Meta you have a video about a modular sofa set aimed at people who have engaged with outdoor living content. On Google Shopping and Search you have ads on "Gartenlounge wetterfest". On Pinterest you have a campaign around small balcony solutions.
On a conventional site, all three land on the homepage or on a category page, and the balcony visitor scrolls past a hero image of a lounge that would not fit in their flat. On a smart website, each campaign has a variant of the landing page. The Meta visitor gets the modular sofa as the hero, with the video's key frame as the image and the promise from the ad, "built for your terrace, not a showroom", as the headline. The search visitor gets a hero that says the word wetterfest in the first line, with the weather guarantee as the proof block, because that is what they searched for. The Pinterest visitor gets balcony sets first, with a "fits a 2 by 3 metre balcony" filter already applied.
The category pages beneath do the same. Product pages do not change, because a product is a product, but the "you might also like" strip on a product page can lean towards balcony sized items for the balcony visitor, which is the sort of thing that lifts basket value without anyone feeling handled.
Each visitor who consents is remembered as "modular", "weatherproof" or "balcony". When they come back on their own in May, the homepage continues from there. And every one of those variants has two headlines under test, so by June you know which line sells sofas to the Meta audience, without a single meeting about it.
What it took to set up: three variants of one landing page and a preference on the recommendation strip, written in the portal in an afternoon, with the campaign URLs generated at the same time. What it replaced: three separate landing pages in a builder tool, a testing vendor's script, and a monthly argument about which hero image to use.
A worked example: a B2B service business
Now the other end. Say you are a fifteen person engineering consultancy doing structural surveys and compliance reports for commercial property, in Austria, with a website that describes eight services and speaks to everyone.
You run LinkedIn ads to two audiences: facility managers at property companies, and architects at mid sized practices. The facility manager ad is about avoiding a failed inspection. The architect ad is about fast turnaround on load calculations during a design phase.
The conventional outcome is that both land on the surveys page, which lists everything you do in the order the founder thought of it, and the facility manager has to work out which of the eight things applies to them.
On a smart website, the facility manager gets a variant of the surveys page with the inspection outcome as the headline, the most relevant certification front and centre, a case study from a property company, and a call to action that says "book a pre inspection walk through" rather than "contact us". The architect gets the same page rebuilt around turnaround time, with a proof block quoting a practice that got calculations back in four days, and a call to action to send drawings. Same service. Same page in the eyes of Google. Completely different first thirty seconds for the person reading it.
The remembering matters even more here than in ecommerce, because B2B buying takes weeks. The facility manager comes back three times over a month, from a saved link, from a colleague's forward, from a search on your company name. Every time, with consent, the site continues the inspection conversation rather than resetting to the founder's eight services. When they finally fill in the form, the enquiry arrives tagged with the intent, so your sales colleague knows before picking up the phone why they came.
I have run this shape of thing manually for consultancies for years, with hand built pages, and the lift on enquiry rate has been the largest I see anywhere, because the generic starting point is usually so far from what either audience needs. What changes with a smart website is that it stops being a project and becomes how the site works.
Why Rails, and why I will not build this on a page builder
People occasionally ask whether all this could be done as a plugin for WordPress or as an app on a hosted site builder. Technically, some of it can. Practically, I have chosen not to, and the reasons are worth stating because they are the same reasons I gave in my comparison of web frameworks.
A smart website is an application, not a document collection. It has a data model with pages, bits, variants, intents, assignments and conversions. It has logic that runs on every request. It has a portal with roles, approvals and an audit trail. Rails is built for exactly that: a mature framework with proper testing, proper security tooling and a data layer that lets me express "the racking variant of this page for a visitor who consented on Tuesday" in a few lines. A page builder is built to let non developers arrange boxes, and every attempt to bolt application behaviour onto one ends up fighting the tool.
There is a security argument as well, which I made at length in the Solidus comparison and will not repeat in full: a site whose behaviour depends on thirty plugins from thirty authors is a site whose security depends on thirty people you have never met. A Rails application with a small, tested codebase is something I can scan on every release and stand behind.
And there is a plain economic argument. A site built as an application does not need to be rebuilt every four years when the theme goes out of date, because the design is a layer over structured content and can be changed without touching the content. Most of the money spent on business websites is spent on periodic rebuilds that recreate the same content in a new template. I would rather that money went into variants that convert.
What this is not, yet
I said I would not describe this as shipped, so here is where things stand honestly, as of writing.
The canonical plus variant model, the campaign parameter matching and the consent based remembering are what I am building first, on my own site, because I refuse to sell anything I have not run myself. The portal editing with AI drafting and human approval is the next layer, and it builds on a client portal that already exists and already handles documents, approvals and audit logging for my clients. The combined ad and page builder, where you write the pair once and get a URL, is the piece I think has the largest potential and the piece I am most cautious about calling done, because getting it right means integrating with three ad platforms that each have their own idea of what a campaign is.
So if you read this and want one tomorrow, what you will get tomorrow is the engineered Rails site with the variant engine, and the rest as it lands. What you will not get is a promise that everything on this page is a button you can click today. I would rather write the honest version of this article now and update it than write the brochure version and hope.
The bit I keep coming back to
Strip away the mechanics and the idea is old fashioned. A good shopkeeper talks to each customer about the thing they came in for. They do not recite the whole inventory to everyone who walks through the door, and they do not follow people down the street to find out where they live. They remember the regulars, because the regulars want to be remembered, and they treat strangers as strangers until the strangers say otherwise.
Websites lost that when they became documents. Ads never lost it, which is why ads are specific and websites are vague and the gap between them costs everyone money. A smart website is simply the website behaving like the shopkeeper again: continuing the conversation the visitor started, remembering with permission, and improving from what actually works rather than from what someone thinks looks nice.
That is what I mean by the term. If your site does not do that yet, and almost none do, the free workshop is where we start: your ads, your pages, and the gap between them.