Call us on 07584 253198

Automatically Adjusting Bids for Multiple PPC Campaigns within an Account By Adwords Scripts

Adwords Scripts is a powerful tool that can support us to effectively manage PPC campaigns, and significantly save our time and improve our efficiency. Today, I would like to use snippets of bespoke scripts to show how to automatically adjust bids for multiple campaigns within an account.


The account has several campaigns with different bidding strategy types like manual cpc, enhanced cpc, target cpa. The client wants overall performance of the account to target COS 20% or less. COS means cost of sales, in Adwords dashboard, there is no metric of COS, so, instead, “total conversion value/cost” is used. Therefore, the optimisation target could be transformed as “total conversion value/cost” 5 or more.


To reach the target, at keyword level, four steps will be taken: pausing poor performing keywords (for example, 1,000 impressions or more but less than 5 clicks; cost £40 but no conversions at all; have conversions but total conversion value/cost 2 or less); changing bids for converting keywords if their average positions out of range of 1 – 1.2; changing bids for non-converting keywords if their average positions out of range of 1.9 – 2.1; raising lower bids to top of page cpc or first page cpc.


Relevant scripts can be developed to undertake each of the steps.


Pausing Poor Performing Keywords


As above mentioned, several thresholds have been set up for impressions, clicks, cost, conversions, and total conversion value/cost to select poor performing keywords.


All enabled keywords are taken out by the following scripts:


Poor performing keywords will be selected by the following if conditions, and be paused.



Changing Bids for Converting Keywords


Once a keyword has a conversion, it will be labelled as “ConvertingKeyword” to differentiate itself from non-converting keywords. There are often new converting keywords that stand out, so, we need to label them out before adjusting bids for converting keywords.

Once new converting keywords have been labelled, another function will be used to get all converting keywords, and figure out max cpc, impressions, average position for them, and also change bids for some of the keywords based on their average positions.


Also, tolerance of 0.1 is allowed. In other words, if a keyword positions within the tolerable range of the target position, 1.0 – 1.2, its bid will not be changed. Thus,


If the keyword positions out of the tolerant range, higher than the upper limit (in this case, upper limit already reaches the highest position, 1.0, there is no possibility to be higher than it any more. However, in the coding, we need to consider that target position and tolerance may be changed), its bid will be reduced. The script would be:



Another occasion is, the keyword positions lower than the lower limit, 1.2, its bid will be increased by:


5% (if positions between 1.2 – 1.7);

20% (if positions lower than 3.2);

5 – 20% (if positions between 1.7 – 3.2), the rate is variable, the lower the position, the higher the rate.


The corresponding code is:



Changing Bids for Non-converting Keywords


Code for changing the bids of non-converting keywords is much similar to the above one for converting keywords. However, two different points are highlighted as follows.


We should make sure all enabled non-converting keywords have been selected, not the converting keywords.


Target position for non-converting keywords is 2.0, tolerance is 0.1. So, tolerable range would be 1.9 – 2.1. If a non-converting keyword position higher than 1.9, its bid will be reduced by:



Conversely, if its position lower than 2.1, its bid will be increased by:

5% (if positions between 2.1 – 2.6);

20% (if positions lower than 4.1);


We should make sure all enabled non-converting keywords have been selected, not the converting keywords.


Target position for non-converting keywords is 2.0, tolerance is 0.1. So, tolerable range would be 1.9 – 2.1. If a non-converting keyword position higher than 1.9, its bid will be reduced by:



Conversely, if its position lower than 2.1, its bid will be increased by:

5% (if positions between 2.1 – 2.6);

20% (if positions lower than 4.1);

5 – 20% (if positions between 2.6 – 4.1)


Changing Bids for Low Bid Keywords


Sometimes, we may see that keywords have bids lower than estimated top of page or first page bids, we can raise them by the following scripts:



Running the Scripts


Once the script development has been finished, you are suggested to access the adwords account, and land on “all online campaigns” dashboard, then carry out the following operations: 


1. Navigate to "Bulk operations" → "Scripts";

2. Click "+ Script" to create a new script;

3. Copy and paste the script into the editor area;



4. Authorise the script (Only once per script);



5. Click “Preview” and wait for a bit for the results to appear;


At this stage, if some errors happen, they will be shown in “logs”. Only after all errors have been sorted out, results will come out.



6. Click “Run script now” to execute the script.


7. Finally, if you want, you can make a schedule for a script to be automatically executed by hourly, daily, weekly or monthly. For this script, it is developed for weekly execution.



Conclusions


The script can automatically finish the bidding for multiple campaigns within an account for a few seconds up to 2 minutes, it depends on how many campaigns the account has. If by manual bidding, it may take 20 minutes to 2 hours. Therefore, automatic bidding by Adwords script can significantly save our time and improve our efficiency.


The script is bespoke one developed for the campaigns managed by me, and thus has limitations. It is not the one that can be used for any other accounts or campaigns, because different accounts or campaigns may have different optimisation targets, relevant setting within the script will have to be changed.