Pete Bowen's site

Computer code rusts

Published January 2026. Last updated July 2026.

I’m writing about a problem that’s bit me in the bum a handful of times.

I don’t have a complete solution for it yet. But I think it’s important enough to raise the issue because it can be the root cause of ad performance dropping.

The problem is system decay.

Obviously computer code doesn’t really rust. But it does decay when people change things without understanding how systems are connected.

Here are some things I’ve seen:

Missing email

A client rebuilt their website. The old site had a contact form that sent two emails:

  • one to the office
  • one to Zapier

No one involved in the rebuild knew what the Zapier email did. The new contact form system only allowed for one email. So they removed it.

But the Zapier email was the bridge between the website and the lead handling system.

Sales handles thousands of leads a month. So nobody noticed the missing leads. The problem was only picked up three weeks later when they were trying to figure out why none of their Google Ads leads converted into customers.

At a reporting level, everything still looked fine. Clicks, leads and spend were all normal. But nobody in sales ever called a lead.

Missing lead sources

Another client switched to a bespoke operations-focussed CRM. The developers stopped capturing ad tracking info like utm_source and utm_campaign. They didn’t think it mattered. The ops manager who owned the project didn’t discuss it with the marketing minion.

Without knowing the real source, it looked like all the leads were coming from organic traffic. Their SEO looked good. Their ads not so much.

Broken phone field

Another client broke offline conversion tracking. Users wanted to add information about leads’ phone numbers like “01234 567890 (office number)”. Instead of adding a separate field, they changed the phone field to allow anything to be entered.

But the person who made the change didn’t know that the phone number was used as a matching identifier for offline conversions. Once extra text was added, Google couldn’t match leads to conversions.

Because Google wasn’t getting clean data, it stopped learning which leads booked. Ad performance suffered.

Mislabelled numbers

Another client mislabelled phone numbers. They were pushing hard to improve their Google Business Profile. They set up a separate phone number for each office’s profile so they could track how many calls came from their efforts.

The person who set up the numbers didn’t know the difference between calls from:

  • Google Business Profile
  • Google Ads call assets
  • Google Ads landing pages
  • Google’s Local Services Ads

And to make things more confusing, the call tracking system was using the old name for Google Business Profile: “Google My Business”.

She made the logical choice. All the numbers were for Google. All were for the business. So she set the lead source to “Google My Business”.

That channel looked amazing. The rest looked broken.

Well-intentioned people change things

The common theme here is that people change things without understanding the downstream impact on ads or marketing.

None of them were malicious or stupid. It’s just a case of not knowing what you don’t know.

In a perfect world every change would be run past someone who understood the downstream consequences. But that’s never going to happen. And even if you wanted to check every change, it’s quite likely that nobody understands all the implications. People change jobs. Businesses change software. Institutional memory fades.

So the longer a system runs, the more likely it is that someone will forget why sending leads to bx4g0g0dy@robot.zapier.com is important.

System decay is inevitable

And this makes life very difficult for anyone managing Google Ads. You end up basing important decisions on dodgy data.

It’s even worse if things are only partially broken. A no-data problem normally gets picked up quite quickly. But a bad-data problem is a bit like a dripping pipe under the house. You don’t notice it because the taps still work, but damage accumulates. By the time you see a crack in the wall, you’ve got an expensive structural problem.

Bad data doesn’t stop Google from learning. It just means it’s learning from the wrong inputs.

We who take the blame if Google Ads goes wrong need a protected source of truth. Something that’s insulated from the side effects of system changes. And we need an early warning system that shows when data quality starts decaying. By the time the ads are unprofitable it’s too late.

I don’t have the full solution to this yet. But I’m convinced that this is an important enough problem to be worth investing significant time into.

Most Google Ads Problems Aren't Google Ads Problems
If my writing resonates with you, I'd like to give you a copy of my book, Profitable Google Ads. The book was written for business owners, but many PPC professionals have found it valuable too.
Before you download it, what describes you best?

Related articles

106 quotes. 17 sales.

The data gap between advertising and sales

Why many RCICs don’t know if their Google Ads are profitable

The invisible Google Ads problem: zero-second calls

Why the phone rings but the workshop stays empty

The Lead Response Problem I’ve Been Trying to Solve Since 2007

Topics you'll find on this site

Agency insights

Thoughts and lessons on client selection, burnout, pricing, and modernising legacy accounts, from someone who's run a Google Ads for years.

Conversion tracking

Understand what happens after someone clicks your advert. Subjects include offline conversions, CRM integration, attribution, auditability and marketing instrumentation.

Essays and thinking

Articles about marketing, engineering, AI and problem solving that don't fit neatly into the other topics. These are some of the ideas and experiences that have shaped how I think.

Google Ads for lead generation

Learn how to use Google Ads to generate profitable leads. Subjects include campaign strategy, bidding, targeting, optimisation and the challenges of running lead generation campaigns.

Landing pages

Things I've learned about high-converting landing pages. Subjects include copywriting, page structure, forms, trust, conversion rate optimisation and user experience.

Lead quality

Understand why some leads become customers while others don't. Subjects include diagnosing poor leads, qualification, filtering junk leads and improving the feedback you send to Google Ads.

Sales Process

What happens after a lead has been generated determines if Google Ads is profitable. Subjects include first contact, follow-up, quoting, lead nurturing and turning more enquiries into customers.