On 1 May 2025 I moved one of my own shops to a new domain: from grillbillbbq.com to nomadfire.shop. Six weeks later the counter stood at over 250 clicks a day from Google. By September there were 65, and there it stayed. I knew immediately who was to blame: AI was sitting above the search results, eating my clicks.
I was wrong. Not entirely, but largely, and the correction cost me months. What did come out of it was a better question: what does the future of e-commerce actually look like, and am I building for it? This is the honest account of both, including the numbers and including the part where I named the wrong suspect.
What happened: the curve of a migrated domain
Between 23 April and the end of December 2025, Search Console counted 1.51 million impressions and 23.9 thousand clicks on nomadfire.shop, at an average CTR of 1.6 per cent and an average position of 24.9. But the average hides exactly what happened. The shape of the curve is the story:
- 1 May: the new domain goes live and starts from practically nothing.
- Mid-June: a peak of over 250 clicks on the best days.
- July and August: steady erosion, a little less week after week.
- From September: around 65 clicks a day, dead flat, right through to December.
My first reflex was the one everybody has now: it must be AI. Google puts an AI answer above the results, the visitor reads it there and never clicks through. That story matches everything you read about it, and it matched what I felt. It just did not match my own graph.
Why that explanation did not hold up
Two things did not fit. The first: the impressions fell too. Not slightly, but about as hard as the clicks.
That distinction is the most important thing I took from this whole episode, and it is precisely what most "AI ate my traffic" stories skip. If your impressions hold steady while only your clicks fall, you are still being shown but nobody is clicking through. That is the signature of an AI answer doing the work for you. If your impressions fall just as hard, you are simply being shown less often. Then you do not have a click problem, you have a visibility problem.
The second: the timing. My decline started in July and ran through to September. There was no AI rollout that lined up with it. There was something else that lined up perfectly: my own domain move, ten weeks earlier.
The curve every domain migration produces
What I saw is the pattern you get after almost every domain move. Google first assigns the old domain's rankings generously to the new one: your redirects work, the signals carry over, it looks like it is going well. That is the peak in June. Then Google re-evaluates the new domain on its own merits, and your visibility settles back to what that domain earns by itself. That is July to September. The level where it flattens out is your real starting position.
I had mistaken that peak for normal, and the fall for an attack from outside. In reality the peak was borrowed and the fall was the bill.
Does that mean AI search behaviour is not real? No. It genuinely is shifting: people increasingly ask an assistant rather than a search box, and get a summary instead of ten blue links. That effect was undoubtedly in there too. But it was the supporting role and not the lead, and as long as I had that the wrong way round, I was fixing the wrong things.
How to tell a migration and AI search behaviour apart
- Compare impressions with clicks, not clicks alone. If your position holds while your CTR collapses, you are losing the click. If everything falls together, you are losing visibility. This is the fastest test there is.
- Lay the timeline next to your own changes. A decline that starts ten weeks after your migration is more likely your migration than an external development. Look first for the explanation you caused yourself.
- Split your search terms by intent. Informational questions ("what is a kamado") lose their click to AI answers first. Purchase-driven terms ("buy a kamado bbq") hold up far longer. If the decline sits only in the informational corner, you know enough.
- Find a control group. Pages that did not move, or a second shop on the same subject, show you what would have happened without the migration.
- Distrust the peak after a move. Measure your baseline not on your best week, but at the level where the curve flattens out. Otherwise you spend months comparing yourself to a number that was never yours.
Rebuilding the strategy took months, not weeks
After that I did what you are supposed to do. Checked redirects down to the last URL, rewrote category copy, fixed structured data, relaid internal links. It worked, but the effect only came back visibly after months, not after two weeks. That is the part nobody prepares you for: in SEO the delay between the change and the measurement is so long that you will be tempted three times in between to throw it all out again. Do not. What concretely works is in SEO for online shops: where to start in 2026, and the full approach to moving is in the migration playbook.
And while I sat waiting for that, the other question kept nagging. I was restoring a position in a game I was not sure would still be played in five years. My wrong diagnosis had been credible for a good reason: the idea that AI is moving in between shop and customer is not a fantasy. It just was not my problem yet this year.
Then I asked AI what the future of e-commerce looks like
So I put the question to a language model directly: what does e-commerce look like in five years? Not as an oracle, because a model does not predict the future. It summarises where all the signals point, and that was exactly what I needed: not an opinion, but the sum.
Six points came out, and they are set out further down this page. In short: the click disappears as a unit of measurement, agents will shop on the customer's behalf, machine readability becomes your distribution, the middle ground disappears, brand and direct customer contact become the only things you really own, and content shifts from a ranking target to source material. That last point is the reason this article exists, complete with a real graph and a real mistake.
Agents cannot buy what they cannot read
Of those six points there is one you can act on today rather than philosophise about: the second. If an agent is going to compare and order on your customer's behalf, the question is not whether your product page is beautiful. The question is whether that agent can read your range at all, and whether it is allowed to pay.
There is a standard for that now. The Agentic Commerce Protocol describes how a shop offers its catalogue to AI shopping agents, with a required set of fields and a fixed shape. Shopify rolled it out at scale first. We have not been original: we follow exactly the same spec, because inventing your own variant is the precise opposite of being machine readable.
Take a look yourself
You do not have to take my word for it, because it is all out in the open. Three addresses on grillbill.eu, one of our own shops:
- grillbill.eu/llms.txt is the map an AI crawler gets: what the shop is, which pages matter and where the product feed lives. It opens straight in your browser.
- grillbill.eu/api/info is the shortest introduction there is: name, description, currency, and whether it is a webshop. Two lines of JSON.
- grillbill.eu/feed is the product feed itself, 259 products today. Note: your browser will dównload this file rather than display it, because it is served as
application/jsonl. Exactly right for a machine, awkward for a human.
For that last reason, here is one line from it, as an agent receives it:
{
"item_id": "cmobg9i65007lo6018tj4m982",
"title": "XL Kamado BBQ 23.5\", Grill Bill Pro III",
"url": "https://grillbill.eu/xl-kamado-bbq-23-5-grill-bill-pro-3",
"brand": "Grill Bill",
"price": "1699.00 EUR",
"availability": "in_stock",
"gtin": "8719322729002",
"target_countries": ["NL"],
"store_country": "NL",
"is_eligible_search": true,
"is_eligible_checkout": false,
"reviews": { "rating_value": "5.0", "review_count": 13 }
}
One line per product, and nothing more. Note the two flags at the bottom. is_eligible_search is true and is_eligible_checkout is false: this product may appear in what an agent shows your customer, but nobody may yet pay on that customer's behalf. Those two switches are separate, and that is deliberate. Becoming findable is a content decision. Allowing payment is a decision about money and liability, and you do not make that one by accident.
What else sits under the bonnet
- Read-only and on an allowlist. What stays out matters just as much: no B2B prices, no purchase prices, no stock per warehouse location. A feed that leaks your margins is not a distribution channel but a data breach.
- An AI findability score from 0 to 100 per product in the dashboard, pointing at exactly which field is missing. That is our own heuristic and not an external standard: the weighting leans on the signals Shopify published and on the required field list from the spec, and gets adjusted as soon as bot analytics show what actually matters.
- A separate map per language. If your shop runs in several languages, each language gets its own llms.txt with the right URLs, because an agent helping your German customer needs to land on your German pages.
This is the boring work behind an exciting story. No chat interface, no demo with fireworks, just filling in fields and serving a file. That is precisely why almost nobody does it, and precisely why getting ahead is cheap right now.
What I started doing differently
I stopped fighting to win the click back and started building for the situation five years out:
- Product data first, design later. Specifications, EANs, attributes and variants: complete and consistent, including where no visitor ever sees it. Without that foundation, the feed above is an empty shell.
- Only writing what I have measured myself. No summaries of other people's guides. Own numbers, own post-mortems, such as the migration from twelve tools to one.
- Measuring mentions, not just sessions. Am I named in AI answers on my own subjects? That is a different question from how many people clicked, and the more important one for the years ahead.
- Building direct contact. Newsletter, returning customers, branded searches. Slower than advertising, and the only thing that does not depend on a single algorithm.
- Recording everything with a date. Without a log you can never prove afterwards what caused what. This is the dullest lesson in this story and the one that has paid off most.
- Building the platform around it. Neuramerce ultimately came out of this: an SEO Manager that also scores pages on findability for language models, and Neura AI that keeps up the data side you cannot maintain by hand.
What I would recommend to you
If you are reading this because your own graph is pointing the wrong way: first check whether your impressions are falling with your clicks, and lay your timeline next to your own changes. Those two checks take ten minutes and determine whether you have a visibility problem or a click problem, two things that call for opposite responses. The temptation to blame AI is strong, precisely because the story is true in general. Check whether it is also true in your data.
And then ask the question I asked too late. Not how to get back what you had, but where you want to stand in five years. The future of e-commerce will not be decided by whoever pulls hardest at their rankings, but by whoever has their data, their story and their customer relationship in order by the time a layer really does come between you and your customer. That layer is being built now, and it reads feeds, not homepages.
More background on the terms in this article is in the e-commerce glossary; the full series is in the knowledge base. If you want to see how we do this in practice, look at how it works.
