At 1am, half my exact-match terms were showing Quality Scores of 4 and 5. The bids and budgets were where I had left them that afternoon, but average CPC was up 38% on the week and impression share was sagging. I kept reopening the change history. It had nothing for me.
I had changed nothing. Someone else had.
I pulled the keyword diagnostics. Expected click-through rate still read Average. Ad relevance still read Average. The third column, landing page experience, had flipped to Below average across the exact terms driving two-thirds of the spend. Google scores that component separately from the ad itself. A drop there can hurt you in the auction even when your copy and bids have not moved.
I opened the final URLs in a fresh tab. The tight headline that matched the top ad group was gone. So was the short form above the fold. In their place sat a full-width hero video, a clever headline that said nothing about the offer, and a footer link to a contact page two extra clicks away. The page felt slower on my laptop. I did not like imagining it on a phone.
The new page had gone live two days earlier. No note in Slack, no email, no change in the shared doc. Years later, I read a practitioner thread in which managers named this exact failure: clients changing destination URLs, moving or deleting landing pages, and wrecking tagging without telling the person managing the account. At 1:40 that morning, I was looking at somebody else’s redesign eating my auction.
The call after the redesign
I called at 9 and did the part of the job I hated most. I told a client who paid me to keep costs down that costs were up, and their page was the reason. I walked through the diagnostics line by line because the ad account keeps receipts even when nobody tells you about the redesign. Expected click-through rate had held. Ad relevance had held. Landing page experience had collapsed on the URLs they had replaced.
The marketing manager was not defensive, which almost made it worse. They had hired a freelancer for a brand refresh. The new page looked cleaner in the deck. Nobody on their side had connected a new hero section to a paid-search auction. To them, the site was marketing. To Google, it was also the page an ad promised to send people to. What the deck calls synergy, I call two people doing the same job without reading each other’s notes.
I owned the result on that call because that was what the retainer said. I owned a number I could not control. I used to tell clients I could protect performance with better account structure alone. I was wrong. Structure did not survive contact with a CMS login I did not have.
The fix was simple and slow, the worst combination. I asked them to roll back the old page for paid traffic only. They said the old template was gone. So I built a fresh landing page on a subdomain I controlled, rewrote the headline to match the ad groups, cut the video, put the form back above the fold, and waited. Quality Score did not snap back the day I changed the URL. We spent another two weeks paying the higher CPC while the scores climbed from 5s back to 7s.
Say you spend $20k a month and your core terms jump from $4.10 to $5.65 a click. At the same budget, that is roughly a quarter fewer clicks. The sales team feels it long before anyone finishes explaining the change history, and the next report carries an asterisk. The practitioner thread had uglier versions: a site migration that double-tracked, then stopped tracking, while CPCs rose under automated bidding, and a domain relaunch that left expensive auctions pointing at 404 product pages. My version was smaller. It still cost the client about six weeks of efficiency for a redesign they never needed.
The line I wrote in my notes that month was less elegant than any report: the account I was paid to manage ended where my login ended. Everything beyond that boundary depended on somebody else remembering to tell me what they had changed.
The quote that disappeared
I thought about that dashboard again last month while watching a different dashboard do the same thing in slower motion. An agency friend had won a citation in ChatGPT and Perplexity for a client buying term. It was a clean little mention drawn from a pricing comparison block his team had rewritten. Two weeks later, it was gone. Nothing in his tracker explained the loss until he opened the page history.
The client had edited the page.
The edit was small. Someone in-house had softened the numbers to sound safer, replaced a specific price range with the word flexible, and cut the question subhead because it felt repetitive. The model stopped quoting the page that same week. An industry summary of UNBOUND 2026 says 4 in 10 AI citations drop after 1 month and 7 in 10 disappear after 6 months. A citation is not a line you can win once and forget. My friend knew that. He had planned to maintain the page; he just could not stop the client changing it first.
The resemblance to my Quality Score night was hard to miss, though the punishment was quieter. Google gave me a number in a column. AI search simply stopped naming his client. He was responsible for the result in the report, but the passage it came from was no longer his to maintain.
He checked what he controlled first, as I had. His prompt tracking still showed the term as winnable. The third-party mentions were still live. The page his citation had quoted was the thing that had moved. One breakdown puts owned websites at 8% of AI citation sources, against earned media at 30%, peer sites at 27% and affiliates at 11%. Owned pages are a small share of the quoted material in that breakdown, but the same summary describes them as a source of truth for checking third-party claims. The specific comparison on his client’s page had been worth keeping. Now it said flexible where a reader, or a model, had found an answer.
His retainer gave him read-only CMS access. He could monitor prompts, send the monthly report, and file tickets. He could not restore the block. An onboarding checklist I wish I had handed him on day one says read-only access supports auditing, prompt baselining and planning, but not publishing, technical fixes or crawler-policy changes. It warns that without write access by the end of week three, the audit finishes and the program sits idle. His audit was excellent. His program was waiting in a queue while the client kept editing.
Then came the part that reminded me of my old subdomain workaround. He asked for template access to restore the question subhead and the schema his team had added. The client team said yes to a new paragraph, but not yet to the template. The onboarding checklist notes that headings, question subheads, schema, canonicals and client-side rendering can require template changes affecting thousands of pages. That is a different approval conversation from editing one blog post. He could describe the missing citation target perfectly. He could not make the change where it mattered.
If I signed an AEO client today, I would want the publishing path settled on day one. Not a ticket queue dressed up as access, and not view-only logins to three tools. I would want publishing rights on the pages I was measured on, a change log I could read, and a named person on their side who would tell me before the next hero video went live. If a team cannot give an agency a staging link and a way to publish approved changes, I would tell them to buy an audit first, not a visibility retainer. I would rather decline that retainer than own another number I cannot touch.
The publish button
A tracker could tell my friend the quote had vanished. It could not put the paragraph back. That is the distinction hidden inside a lot of AEO pitches. A comparison of Profound and AEO Engine describes Profound as a platform whose agents and workflows the customer operates; AEO Engine pitches managed publishing across WordPress, Shopify, Webflow and GoHighLevel. One sells a way to see and operate the work. The other pitches hands on the page. For my friend, the useful question was narrower than either pitch: who could put the approved comparison block live before the next report?
There is another route when template approval is the obstacle. A 2026 tracker roundup describes Scrunch working at the edge, serving AI crawlers a parseable version of a site without waiting on the usual client backlog. It lists a $250-a-month base plan covering four engines, with broader coverage on custom enterprise. That is a particular workaround with a coverage limit, not permission to ignore what the client publishes. You still need to know which version says what, and whether the route covers the places your buyers actually look. My friend’s problem began because one ordinary edit removed the words his team needed. A different layer would only help if it gave him a dependable way to keep those words in place.
The next year, I held three retainers at once. Every client had a different CMS, a different approval chain, and a different cousin with opinions about headlines. That is why I tell agency owners to read the same accountability problem stretched across ten white-label client domains before they package AEO as another line item. One surprise edit is a bad night. Ten domains with change logs you cannot see leave you responsible for pages that can drift between reports. If you sell the citation, you need a way to keep its source current.
That is also why I take execution seriously when I look at delivery for agencies. On the paid side, groas runs bids, budgets, ads and landing pages around the clock, with actions and reasoning logged. On the organic side, it ships content, technical fixes and citations under the agency’s brand. That is closer to the work I needed done than another dashboard telling me what had broken. I laid out tickets, direct CMS publishing and edge deployment in how to get client-site AEO fixes live without a developer queue. For agencies selling that work, groas for agencies is the execution path I would put ahead of a tracker alone or a publishing promise that still leaves my team chasing the client developer. I want to know who can make the approved change, and see that they made it.
I still check the page history first.

