Back to your free performance check!

Location Adder & Geo Bidding Script

Location Adder & Geo Bidding Script – who invented it?

As customer behavior varies over time and big cities or regions convert completely differently, you need to set up different CPC’s (in our case different bid adjustments to your CPC’s). These will be set on a location level to ensure you always have the maxed out CPC based on your return on ad spendings. Otherwise, you may end up wasting money.

Because it is important for us and our customers, we tried our best to find a script which works and does this job automatically. Alas, we failed to find it. Therefore, we decided to code it ourselves, which took quite some time. (Special props to Alex and Daniel!)

The Location Adder & Geo Bidding Script – what does it do?

The script looks for already existing locations in your campaigns and sets bid adjustments based on the difference between campaign conversion rate and location conversion rate as previously mentioned.  If for example the campaign converts with 2 %, and your added city converts with 3 %, the script will adjust the bids for this location by +50 %. If the region converts with just 1%, the script will adjust the bids by -50 %. If the script finds no location in the campaigns it will add locations to your campaign with the right adjustments based on your filter settings. After the script runs through your account it will create an entry in a spreadsheet. These entries allow you full control over all changes made by the script each day of the week. Once a week is finished, the column will be reused, meaning in the Monday column, you’ll see only the latest changes made on the most recent Monday.

This is how you use the script

In a nutshell – if you want to set things up manually you can do this by selecting your campaign and then checking the dimension tab to filter locations and check for their conversion rates.

Basically, you must filter for locations which have already converted and have at least one click. Otherwise you’ll end up with an unnecessarily long list. Most of the time it is much better to filter for at least 10 clicks and maybe some more KPIs. For example, I filtered for 10 clicks over the last 30 days. Also, the location needed at least 50 impressions, and the 10 clicks had to cost at least 5 EUR during this time period. Also, I didn’t want my brand campaigns to be included, but it is really up to you to customize your own filters or settings.

After you filter the results you’ll check for conversion rates. After that, you can add all relevant locations with the right bid adjustment to your campaign. If for example the campaign converts with 1 %, and your filtered city, region, or location converts with 2 % you should adjust the bids for this location by +100 %. This is something you’ll have to do with all your campaigns and best case scenario once a day, because as aforementioned: Customer behavior varies over time and so do conversion rates.

This is a lot of manual work and mistakes are bound to happen, which why we wrote this beauty!

For everyone who is interested in this script, you can find it now on github, here:

How are your experiences with our script or other similar scripts? Please write us a comment. If you have any question regarding the script or anything else, you can write us an e-mail to

Leave a Reply

Your email address will not be published. Required fields are marked *