Adwords Bid Management Script

posted in: Adwords Scripts | 24

Bid manager is an Adwords script that you can use to manage your bids in Adwords automatically.  All the bid changes and bid rules you do manually can be completely automated using this script.  You can have several instances of this script managing a single account at one time.  You can also have multiple instances of this script managing bid rules based on different date ranges – Ex: 30 day period, 60 day period, and 90 day period.

This is a great solution for PPC marketers that have a lot of Automated Bid Rules running.  Automated bid rules are great.  The problem is, they take a lot of time to set up manually. This script runs off of a Google doc spreadsheet.  This makes creating, editing, and deleting bid rules very easy.

If you’re ready to free up a bunch of time by automating your PPC bid management tasks, click the buy now button and implement this script right now.

Get Access To All Of
My Adwords Scripts

for a low, one-time payment

Learn More

Pre-Sale Questions

#1: Can the script manage performance based on conversion data?

Yes. Converted clicks, click conversion rate, and cost / converted click metrics are at your disposal.

#2What kind of date ranges can I use?

Available Date Ranges

#3How does this script compare to the multi-bidder script bid script provided by Adwords?

Many ways! Adwords multi-bidder pales in comparison and here’s why.

    1. Multi-bidder doesn’t support bid rules that use Cost-per-conversion (cost / converted click). This is a major problem!
    2. You have to decipher Adwords documentation to learn all the metrics.  Our script has easy drop-downs in cells that SHOW YOU your options.
    3. Our script has a Changes tab that record all the changes the script makes so you don’t have to do it in the Adwords interface.
    4. Our script supports 60 and 90-day date ranges where multi-bidder does not.
    5. Our script is supported and maintained by us so if you need help implementing it, we’re here to help!
    6. Our script lets you track the names of your rules to see which rules are being acted upon compared to others.
    7. Our script comes pre-loaded with a default set-up that we have used on high-end conversion products which you can alter to suit your need to be up and running fast.

#4Can I run multiple instances of this script on the same account daily?

Yes.  In fact, that’s a big part of why this script is so powerful.  You know how you manually look at performance over a 30-day period?  Well, imagine being able to have a tool that looks over a 30-day period, and a 90-day period and all-time and evaluates the performance of a keyword for each time period.  You can then tell the script what to do based on the performance of that keyword performance in the short-term and long-term.

For example, if you have a CPA goal of $100 and a keyword has a $60 cost and has not converted within 30 days, your 30-day script could do nothing, decrease the bid, etc.  Then when your all-time script runs, it might find out that this keyword has never converted and has a cost of $300.  In this situation, your all-time script can be set up to make more aggressive bid changes to reduce the bids based on performance over a certain threshold.

Long story short, you would do all this manually anyways so why not let a script do the grunt work for you?

#5: Your Question Here!

Have a question? Leave a comment below and we’ll put it here!

24 Responses

  1. […] Adwords Bid Management Script […]

  2. […] are some ideas on strategy when using our Bid Manager script.  Keep in mind that these are only a few approaches.  You can deploy a strategy that manages […]

  3. […] setting Bid Rules within the Bid Manager spreadsheet, you’ll want to first get a baseline for the types of spend thresholds for the date range you […]

  4. Hi Jarad
    Thanks for this script. This sounds great!
    Does the script also provide a rule that broad match keyword bids are always lower than the corresponding exact match keyword bids? For example: bid for +script must always be lower than bid for [script] as otherwise the exact keyword won’t be delivered anymore (unless I use negative keywording).

    • Hi Ben, that’s actually something I’ve been contemplating. I think that’s a brilliant and very useful feature. I just did this the other day in Excel by normalizing all keywords for a given account (removing + signs, [, ], “) then using vlookup for the MAX value for a given normalized keyword. Then I compared it to see if the max for that keyword was Exact. If it wasn’t, I set it to a percentage of the max (ex: 85% of max if phrase, 75% of max if broad, if exact, set to max). I’ll have to think how I could incorporate something like this into this script.

      • Hi Jarad,
        Thanks for your response. Yes this sounds like a proper approach.
        It would also be good if it wouldn’t be a percentage but a 1ct decrease for phrase and a 2ct decrease for broad compared to the exact bid. Otherwise a change of e.g. 75% might have a bigger impact than the initial bid change. But I don’t know if static bid changes like that would be possible..
        A follow-up script like that would be great. I wonder how the automatic bid management tools are managing this…
        Let me know when you come up with a solution – then I buy it 😉

      • Hi Jarad, any news concerning the ‘premium’ edition of this script?

  5. These scripts are great, good work.

    I’ve noticed a quirk with this though which is manageable but worth bearing in mind. If you have a high multiplier down which has a stop limit above the current bid you’ll actually end up increasing the bid rather than decreasing it! (I can only imagine the inverse will be the same). I think it needs a check somewhere to detect whether the increase/decrease is actually bigger/smaller than the original value (ie a bid of £0.40 with a stop limit of £1.00 when multiplying negatively will pull the bid up to £1.00, I’d suggest in this case to add an option to not modify bids below/above stop limits)

  6. Gary Wheeler

    I have multiple accounts. Can I buy one ‘Adwords Bid Management Script’ script and copy it into all my multiple accounts or do i need to purchase individual ‘Adwords Bid Management Script’ for each of my accounts?

    Also, most of my clients rely on walk-in traffic, so conversions are hard to come by [auto dealers]. Can you swap out conversion with a google analytic like ‘time spent on website’ or ‘avg time spent on website’?

    Do you have reporting scripts?

  7. Hey Jared, Great scripts!
    Under the action there’s no pause function. Is that something that this is capable of? I’d like to be able to pause high spend with no conv but couldn’t figure out how. Thanks.

    • Hey Peter, Sorry, I didn’t build in the capabilities to pause because I figured people wouldn’t want to automate pausing of keywords without their review first. For this, you might have to use an automated rule instead. It’s a good suggestion though and one I will likely implement the next time I update the script.

  8. HI Jared,

    the script looks good. Do you have the MMC version ready yet?

    • Hey Samuel,

      I haven’t been working on turning my scripts into MCC-level scripts. I have a link checker script that runs on the MCC-level but my attention right now is on other projects. The one and essentially only benefit of having my budget management scripts at the MCC-level instead of account-level is that you could have multiple accounts in one spreadsheet which makes management less tedious. It’s a good idea, I just haven’t gotten around to it. I’ll look into what it would cost me to get those made.

  9. Hi Jared,

    Nice scripts, pretty useful.

    Some questions and suggestions about the bid manager :
    – Is there any way to modify shopping campaign bids ?
    – I notice there is no “assisted conversions” criteria available. Would you consider adding it ?
    – Also, another suggestion : it would be nice to be able to define the date range to which each rule individually applies. But I guess it may not be worth the hassle since it can be done with multiple scripts.

    • Thanks for the suggestions Johann. I’ll look into shopping campaign bid management possibilities and assisted conversions.

      I also just has some MCC-level scripts made for my bid and budget management scripts that do allow you to define date range for each rule! So we’re on the same page there. I haven’t released them yet because I haven’t tested them. If you want to beta test them, let me know. I wouldn’t be able to provide a lot of context though because I myself haven’t implemented one yet.

  10. That’s cool
    I could beta test them for you, but I don’t manage a lot of accounts yet (so too small a sample for good testing), and I’m still transitionning from manual bid managment to scripts, so not much experience with scripts yet either… Maybe in the future, though.

  11. Another suggestion : would be cool to be able to add a variable in a label. For exemple position or CTR, you could then compare keywords’ last month stats with last week stats (by running the script weekly and monthly) and easily see declines or progresses when manually checking.
    But then it would quickly generate a lot of labels, so there should also be a way to delete them with a rule.
    Or another (easier) implementation would be to include the comparison rules, and only label “up” or “down” depending on their progress for example.
    Could be done in a separate script though. I’ll try to build it myself (trying to learn AWQL it’s so awesome^^)

    In my view I think the assisted conversions are the most important features missing in your scrit, the rest can be done separatly, but this would be really important for example to not pause a keyword that has no conversions but with a lot of assisted conversions…
    I just made a script to label them, it’ll do in the meantime.

  12. Hi,

    Is there a way to not run the script for a few select campaigns ? Let’s say you’re trying Adwords flexible bid rules for one campaign, how do we make it not interfere with the script ?

    Thanks !
    PS: any update programmed for this script ?

  13. I forgot to mention a bug : when there’s a condition with average position < ? if the average position is exactly the criteria it defaults to the max cpc bid… Can't figure out why. Maybe you should add a criteria for average position =

  14. What does the exclamation point mean, example CampaignName = ‘?’ vs CampaignName != ‘?’

  15. Does the script still work with the recently depreciated – converted clicks?

Leave a Reply