5K members online now
5K members online now
Improve your AdWords performance and boost your ROI, CTR, and Quality Score
Guide Me

Rule For Lowering Bids To First Page CPC

Visitor ✭ ✭ ✭
# 1
Visitor ✭ ✭ ✭

Hi -- I currently have a rule in place called "Raise bids to first page CPC" which increases keyword bids to the first page if when the fall below the "Estimated First Page Bid". This works great. But its there away to have automatically lower the bids once the "Estimated First Page Bid" is suddenly much lower than the current bid?

1 Expert replyverified_user

Rule For Lowering Bids To First Page CPC

Explorer ✭ ✭ ☆
# 2
Explorer ✭ ✭ ☆

There is another option: use the campaign bid strategy "Target Search Page Location" and set it to "anywhere on the first page". That way Google will learn the proper CPC bids to keep your ads on the first page without them going too high.

Marked as Best Answer.
Accepted by MosheTLV (Top Contributor)
October 2016

Re: Rule For Lowering Bids To First Page CPC

Top Contributor
# 3
Top Contributor

Hi @Carl F to be honest, you'd do better running a Script that adjusts CPC for Keywords based upon a target range of average positions.  In my experience the "first page bid estimates" can be wildly inaccurate (usually resulting in your average position being 1.0, right at the very top).  Actually measuring average position over time and adjusting bids up or down is a far more reliable method.  This very simple script would do it:

//Simple Script to adjust Keywords to position
//J Gritton (c) 2016

// adjust these as desired
var HIGHPOS = 2.0; // average position higher than this will have CPC reduced
var LOWPOS = 4.0;  // average position lower than this will have CPC increased
var ADJUP = 0.1;  // amount to increase bids by
var ADJDOWN = 0.12;  // amount to decrease bids by (recommend these two figures are different)
var LOOKBACK = "LAST_7_DAYS";  // other options "LAST_14_DAYS", "LAST_30_DAYS", etc.
var MAXCPC = 2.0;  // the absolute max you want for CPC, regardless of position
var MINCPC = 0.1;  // the absolute min for CPC, regardless of position

function main() {

function walkKeywords() {
  var keyIter = AdWordsApp.keywords()
    .withCondition("CampaignStatus = ENABLED")
    .withCondition("AdGroupStatus = ENABLED")
    .withCondition("Status = ENABLED")
    .orderBy("Cost DESC")
  while(keyIter.hasNext()) {
    var thisKeyword =;
    var thisStats = thisKeyword.getStatsFor(LOOKBACK);
    var thisAvPos = thisStats.getAveragePosition();
    var currCPC = thisKeyword.bidding().getCpc();
    var newCPC = currCPC;
    if(thisAvPos < HIGHPOS) {
      newCPC = currCPC - ADJDOWN;
    if(thisAvPos > LOWPOS) {
      newCPC = currCPC + ADJUP;
    newCPC = (newCPC > MAXCPC)? MAXCPC : newCPC;
    newCPC = (newCPC < MINCPC)? MINCPC : newCPC;
    Logger.log("Keyword: " + thisKeyword.getText() + ", Current Av. Position: " + thisAvPos + ", Old CPC: " + currCPC + ", New CPC: "+ newCPC.toFixed(2));

Create a new script, copy this in, rename it, save it then PREVIEW it.


Adjust the settings at the top to suit your purposes and then schedule it to run daily at 1am and you should be done.  There are more complex versions, but this should be a good start....



AdWords Top Contributor Google+ Profile | Partner Profile | AdWords Audits

Re: Rule For Lowering Bids To First Page CPC

[ Edited ]
Follower ✭ ☆ ☆
# 4
Follower ✭ ☆ ☆

Hello Jon, thank you for sharing this code with us.


I was wondering why you set

var HIGHPOS = 2.0;

Wouldn't it be better to set it to something like 1.49 to better assure that the ad is positioned #1?


I also adjusted the 'LOWPOS' to equal 1.9, so now it raises any bid lower than avg. position 2 and reduces any bid with avg. position > 1.49, is this going to cause any problems?


Lastly, how often should you run this script? I guess it should run as frequently as 'Average Position' is updated. The question is how often is it updated? 


Thanks again. Smiley Happy

Rule For Lowering Bids To First Page CPC

Visitor ✭ ✭ ✭
# 5
Visitor ✭ ✭ ✭

Hi Jon,


I'm currently using your script but it seems to increase my Max. CPC too much. It performs really well for some of the keywords, but for other ones, it increases my CPC to outbid the 1st spot bids.


I aim to raise my keyword bids to match the 2nd position in Serps for all of my keywords and here are my settings:


var HIGHPOS = 2.0;
var LOWPOS = 2.0;
var ADJUP = 0.9;
var ADJDOWN = 0.80; 
var MAXCPC = 22.0; 
var MINCPC = 1.80;


I tried dozens of scripts but almost all of them either do not make any changes, run every minute disregarding the fact they are set to run hourly or increase the bids drastically, whilst failing to lower them afterwards.


Would really appreciate help from any of you guys! Thank you.


Take care, everyone!