Skip to main content

An Actual 10 Step Guide on How to Scale a Working Campaign into Other Geos

Happy Valentines Day 🙂

Here’s a step by step guide on how to scale a working campaign from One geo to many other geos (assuming that the offer you are running is available in other geos).

You will need to pick the top two angles and top two images from your winning campaign.    You can do the picking yourself, or your senior trusted media buyer – many of the other steps can be done by grunt labor/assistants.

We use trello for the process, and people just move the cards along the production line like a factory.  Here’s how our internal trello looks like (this is a mock up, of course I won’t screenshot our actual one with content)

Step 1 – Order translations for the winning angles in your target countries,      you can get them cheapest at www.transey.com (half price compared to OHT)

Step 2 – Get variations made of your ad – not really a must but recommended (different color border,  swap horizontal, other minor variants to have a different pixel footprint for safety reasons)  –  www.bannerslanders.com can help here or your VA!

Step 3 – Get the landing pages translated (transey) – we always run two of our best pre-landers, when the translations come in get the landers localized (changing the text, updating the images on lander in photoshop to be in the target geo language, also changing out logos/references to make sense when someone in the geo visits the lander, change people’s images/faces to that of the target audience – you want to make sure the right races show up in the right geos, etc otherwise you won’t have good enough LP CTR)

Step 4 – Get a safe site up for the geo,  populate it with local articles, etc (Safe Site Creation Service)

Step 5 – Upload the pre-landers you had localized on the safe site via FTP

Step 6 – Setup the tracker campaign, make sure the postbacks (s2s) and cloaked pixel or tracking codes are properly placed. (Voluum)

Step 7  – Setup the cloaker campaign and test to make sure it works, after you are done, set it to deny all or in review.

Step 8 –  Access the dedicated ad account you wish to run the new geo on (one geo per ad account!) and create your campaign, linking it to the safe article URL on your safe site.

Step 9 –  Wait until it gets at least 20 clicks, then turn on cloaker

Step 10 – Observe and monitor the new campaigns

*Rinse n repeat for every single geo you wish to scale to.

 

How to Delay Firing Your Facebook Conversion Pixel

This Facebook Conversion Pixel trick will help get better, more qualified visitors to your site because it will help train it to be smarter. When running campaigns,  thinking outside the box can yield amazing profit benefits.  One of these things is delaying firing the facebook pixel when a visitor comes to your page.

Why would you want to do this?

The answer makes a lot of sense, and here’s why – lets say 10 people come to your page,  7 of them come, they see it, and they close the window.   They didn’t read ANY of your text, they probably saw oh damn this is an advertisement,  and bounced right off your page.

Then there are the 3 that stayed, and read the page.    THESE ARE THE TYPE OF VISITORS YOU WANT! They will read your lander,  and are most likely to convert on your offer.      Train your pixel to target these kind of people!   Delay firing your facebook conversion pixel by 3 seconds to clean your pixel from “bouncers”. We personally use AddToCart to optimize for people that visit the LP and actually read it.

It is easier than ever to implement, all you have to do is add a setTimeout function to the tracking elements and specify how many milliseconds you want it to wait before firing the pixel.

 

Here’s the default FB pixel they give you from the Pixel Panel:

[code lang=”js”]
<!– Facebook Pixel Code –>
<script>
!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version=’2.0′;
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window, document,’script’,
‘https://connect.facebook.net/en_US/fbevents.js’);
fbq(‘init’, ‘XXXXXXXXXXXXXXXX’);
fbq(‘track’, ‘PageView’);
fbq(‘track’, ‘AddtoCart’);
</script>
<noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=XXXXXXXXXXXXXXXX&ev=PageView&noscript=1" /></noscript>
<!– End Facebook Pixel Code –>
[/code]

We are concerned about the AddtoCart tracking property, we want to fire this only for people who read the page/stay on it for minimum 3 seconds. So we wrap it in some sexy code that will delay it from firing.

Here’s the FB pixel from above with the setTimeout function added

[code lang=”js”]
<!– Facebook Pixel Code –>
<script>

!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version=’2.0′;
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window, document,’script’,
‘https://connect.facebook.net/en_US/fbevents.js’);
fbq(‘init’, ‘XXXXXXXXXXXXXXXX’);
fbq(‘track’, ‘PageView’);

setTimeout(function(){
fbq(‘track’, ‘AddtoCart’);
}, 3000);

</script>
<noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=XXXXXXXXXXXXXXXX&ev=PageView&noscript=1" /></noscript>
<!– End Facebook Pixel Code –>[/code]

 

Note: Be sure to replace XXXXXXXXXXXXXXXX with your pixelID!

TLDR version:

[code]

We’ve added setTimeout(function(){ }, 3000;
around the "function" we want to delay ->
fbq(‘track’, ‘AddtoCart’);

[/code]

PS: You can use 3rd party tools like Google Tag Manager, or PixelYourSite to delay firing the pixel through those, you may also create a custom audience, and optimize for the top 25% of people that spent time on your site, or top 10% or top 1%. So there’s multiple ways.