There are dozens of interrelated on- and off-site metrics. There are hidden factors like Quality Score and competitor activity.

There are unquantifiable, fuzzy influences like user intent and ad quality. And everything varies by time, device, demographic and location.

On top of that, anything can be altered over time: not only do features come and go, but trends turn and competitors change.

Even if you could set up your campaigns perfectly, you can’t leave them alone and expect to keep raking in the highest possible profits.

PPC is not just marketing; it’s a combination of statistics, mathematics and science as well.

Yet most companies are building teams by hiring marketers rather than statisticians, scientists and programmers.

This may be a hangover from the old days when PPC was just an add-on to the traditional marketing services that large media agencies offer.

Either way, the market has developed into its current state, where PPC technology is almost synonymous with third-party bid management tools. The problem with these tools is that they weren’t designed just for you.

You can tweak settings but you don’t have full control. Every business has its own needs and goals, so it’s unlikely they can always do precisely what you need.

Rather than struggle to manipulate a third-party tool, why not just build something that works for you?

That’s where coding comes in. Historically, the AdWords API was an impossible starting point for people who wanted to automate little snippets of their PPC.

You sometimes needed to wait three months for approval to use the API and had to spec out a whole programme before you even knew if it would work.

Then AdWords Scripts came along and let you programmatically control AdWords with the relatively easy JavaScript.

So, what can you do with code?

Coding gives you control over your bids at scale

It may seem obvious that everyone is trying to make as much money as possible, but it matters whether you’re trying to maximise revenue, profit, the number of conversions or the ROI.

You might not want to be as aggressive as possible; you might want to buy the right number of leads according to the number of operators in your call centre.

And your strategy depends on whether you have a fixed budget to use, or if you can spend as much as you want while the results are good.

Only coding gives you the control to do precisely what you want, as many times as you want, as often as you want.

With your own bidding algorithm, you can keep track of your changes, analyse what works and learn more for the future, rather than just allowing a third-party algorithm to make decisions without all the insider business knowledge that you possess.

Coding can bring in extra data

PPC depends on many factors, not all of which are standard AdWords metrics.

You can use code to pull Salesforce or Zoho data into AdWords. Code can make your ads and bids change according to the weather or the sports results.

It can pause ad groups for out-of-stock products, or even bid in real time based on hotel pricing and availability.

Coding takes care of repetition

Reporting isn’t hard – it’s just copying and pasting data – but it’s taking time away from tasks that actually need your brain.

You can automatically run reports in AdWords or Analytics, but if you code your own reports you can customise any external or calculated fields you want and use that data to make custom dashboards.

You can also reduce repetition by using code where you want to make identical changes to similar campaigns – like if you have copies of campaigns for different locations – or (using the API) automatically sync campaigns in Bing Ads when there are changes made in AdWords.

Coding overcomes limitations

If you use AdWords scheduling, you can only schedule six bid changes a day. With code you can change bids every hour.

If you’re feeling keen, you could even code something to change bids at keyword level every hour, or schedule mobile bid changes separately to desktop.

If you set up your campaigns normally, an exact match keyword will pick up any ‘closely matching’ search terms. With code, you can exclude everything but the search term you want.

There are limits to what you can overcome – you can’t code your way around the lack of tablet targeting. But those limits are much wider than the limits of just using the AdWords interface and/or a third-party tool that has to wait for the API to update before they can make changes.

Coding can handle statistics

If you use AdWords Campaign Experiments, you can see the difference made by changes to bids, keywords, ads or placements, but you can’t test any campaign settings.

With an AdWords Script you can build your own experiments, testing anything, with control and test campaigns that switch on and off with alternate ad schedules (Script coming soon!).

Then you can code a test to see if those results are statistically significant.

Coding does the worrying for you

A programme can watch your accounts all day, every day – so you don’t have to. You can set up emails so you’re warned when URLs break, performance plummets or budgets are in danger of being exhausted too soon.

You can get started by customising this free Anomaly Finder from Russ Savage.

In summary…

The next generation of PPC managers will have to know how to code, especially if they want to manage at scale.

As Irfan Rafiq, PPC Manager at Just Eat, says, “PPC has become more complex than many first-generation marketers are willing to admit. A PPC expert with programming skills will always have an advantage in the field, certainly more so than training a team of programmers, something both time-consuming and expensive.”

To be clear, I’m not saying all of PPC should be done with coding. Not everything can be programmed.

Things like ad writing and keyword research need a human eye – you need to judge the persuasiveness of calls to action and the intent behind search queries.

And coding has its risks: you need to check for bugs and monitor performance to make sure your scripts and campaigns are running as they should.

But there’s a side to PPC that’s made of numbers, and to master that side you need to code.