Off to Affiliate Summit

Posted on: August 8th, 2008 by Nick


Just wanted to make a quick post that I’ll be in Boston this weekend for ASE. Looking forward to meeting up with the guys I’ve been working alongside this past year and partying it up in Beantown. If anyone wants to meet up, feel free to shoot me an email or get in touch on twitter as I’ll be checking that throughout the conference. I plan on heading over to the #cakes and the wf meetups and then doing the club thing at night with my AMs from Neverblue and CX. Hope to see ya there :)


ILLEAT.com | Affiliate Marketing, SEO & Making a Living Online

Facebook Internal IPs

Posted on: July 3rd, 2008 by Nick

So in yesterday’s post about cloaking to facebook interns I mentioned that one way to mitigate against the new review process is to check the IP of the interns and store for future use. To help you get started, I went ahead and grep’ed some of my old logs and built up a list of review IP addresses.

You can view the full log file with the corresponding dates and referrer urls at intern.csv and the unique ips to be used for the cloaking script at intern.log. I plan on adding to this list in the future and hopefully get a nice comprehensive list of facebook ips.

On a side note, for those looking to get started with facebook ads, Neil over at Neilsweb has posted a nice collection of free facebook coupons to get over $100 in free clicks.


ILLEAT.com | Affiliate Marketing, SEO & Making a Living Online

New Facebook Cloaking Script

Posted on: July 2nd, 2008 by Nick

So the Facebook interns finally got wise to the old method of cloaking and have begun testing the ads both with and without the traditional intern referral url. Over the past few weeks, I’ve seen the following requests occurring sequentially:

[offer url], 76.102.66.165, 09:48PM, 2008-07-01, http://harvard.intern.facebook.com/intern/ads/review.php
[offer url], 76.102.66.165, 09:48PM, 2008-07-01,

So it looks like the interns are checking to see if people are cloaking against the common intern.facebook.com style referrals. One easy way to mitigate this is to just log the ip of the interns on their first visit and compare against that for future requests. Not foolproof, but should work pretty well for the time being. The code to accomplish this can be found here.

Nothing groundshattering, but for anyone that needs a quick php script to plugin to existing systems, this should work for you. Additionally, if anyone wants to share the lists of intern ip addresses that they build up, feel free to post in the comments :)


ILLEAT.com | Affiliate Marketing, SEO & Making a Living Online

Going Pseudo-Direct

Posted on: June 26th, 2008 by Nick

Anyone who’s read Diorex’s Affiliate Playbook knows that one of the goals to aim for in affiliate marketing is a direct-to-merchant relationship. This allows you to work directly with the merchant who’s offer you are promoting and cutting out the network middle man altogether, equating to higher payouts and more transparency.

For new affiliates or affiliates pushing moderate volume and lead quality, this is most likely out of the question until you prove yourself. Or is it?

While doing some research on a few payday offers, I was checking out an offer run on CX digital (awesome affiliate network for anyone looking for some quality offers). The particular offer that I looked at is Accelerated Payday. Nothing stellar…however theres a few things to take away from this offer. The first is the redirect path. If you look at the status bar, or use LiveHTTPHeaders for Firefox or some other redirect following tool, you’ll see that your browser goes to incentaclick.com 0> adiclicks.com 0> acceleratedpayday.com. The adiclicks.com intermediate tracking url is what we want to look for. In this case (and most of the time), this tells us that our traffic is being forwarded through another network/advertiser in addition to incentaclick. Looking at the AcceleratedPayday page, we see a link at the footer to Affiliate Program which takes us to Commission Wizard which, sure enough, is another affiliate network. So not only is Incentaclick taking a cut of the original lead cost, but Commission Wizard is well. Moreover, we can safely assume that Incentaclick is simply another affiliate on the CW network and is getting a payout greater than they are offering us so that they can turn a profit. Thus we can go ‘pseudo-direct’ (lame term but it gets the point across) by simply signing up for commission wizard and running the offer through them. This will allow us to get closer and closer to the end merchant, cut more middleman out of the process, and make more money on our leads.

But what if the landing page doesn’t have a link to the parent affiliate company on it? Well, a lot of times, you can simply enter the redirect url (adiclicks.com) into google and it will give you the company that the tracking url belongs to. Another option is to put the tracking url into MyIPNeighbors and you will see some of the other sites on the IP address…this will more often than not have the affiliate networks page on it as well as a slew of other offers that this network runs. If nothing turns out at first with MYIPNeighbors, try incrementing the last octet of the ip address (if adiclicks resolves to 64.71.230.66, try 64.71.230.67, 64.71.230.68, etc). A lot of times networks own larger blocks of IP addresses so with a little snooping you can weed them out.

There are TONS of these offers out there across all of the networks. If you’re doing decent volume on an offer, but not enough to get the attention of the end merchant, see if there is a way for you to get closer to the merchant by chopping out some of the intermediary networks. Lots of times, you can get a few bucks more on your leads by signing up for another network and swapping out your affiliate links :)


ILLEAT.com | Affiliate Marketing, SEO & Making a Living Online

Facebook Social Ads Experiments - Campaign Quality Score?

Posted on: June 15th, 2008 by Nick

One of my favorite blogs to read is Michael Martinez’s Seo Theory. Every once in a while, Michael will post a list of different experiments to try to help the beginner/immediate SEO hone their skills and understand different aspects of optimization. Recently, I’ve been experimenting with different campaigns and ideas on some of my auxiliary facebook accounts to try and squeeze some more water out of the facebook well. I’m going to be posting some of these experiments that I have tried over the next couple of days as well as what they did/did not conclude.

Experiment 1. Keeping a Clean House - Facebook Campaign Quality Score?
Adwords is notorious for looking at your account and campaign history when deciding your quality scores and the impressions/cpcs that you will get. If you have a ton of bad performing campaigns and ads in your account, other campaigns that you create in the future may suffer in the form of higher bids and lower quality scores. So I decided to see if Facebook looks at this info with social ads. The goal of this experiment was to see whether or not campaign structure/quality affected our bid prices/impressions. A good assumption would be that a campaign with a lot of ‘dead’ ads (ones with yellow exclamation marks that haven’t been served in a few days) would have a worse quality score than one with no ‘dead’ ads, assuming of course that all other variables were held constant and that facebook did actually implement some type of quality score (the unknown in this experiment).

For this experiment I set up 3 campaigns based off another campaign I was already running so I would know the type of numbers to look for. This original campaign was pretty gross:

I would use this campaign as the basis for the 3 test campaigns. The first campaign would have all of the same ads from the original campaign, including the ones that have proved to suck. The second campaign would have all the ads from the original campaign, but after the ones that suck died out, Id delete them. The third campaign would have only the ads from the original campaign that had a ctr over 0.15%. I needed to launch these campaigns all at a time when they’d be accepted together to avoid dirtying up the statistics due to time of day (different ads perform differently throughout the day). After letting the campaigns run for a few days and stabilize, the totals for impressions, cpc and cpm should let us determine whether some kind of a campaign quality score exists. Assuming our good ads performed roughly the same across all three trials, the ad with only good ads should receive preferential treatment from Facebook if a campaign quality score exists.

Results: Campaign 3 had absolutely no advantage to it over the other two, other than allowing the page to load quicker (when you 100 ads in an adgroup it will take a few seconds for the page to load). After 3 days, the cpcs were roughly the same, averaging out at around ~30cents, with the impressions all remaining consistent as well. On my end, the conversions were all consistent, although this has little to do with the 3 campaigns used since all of them ended up serving the same top-performing ads over 90% of the time. This doesn’t conclude the absence of campaign quality score, only that in my experiment, campaigns with bad ads didn’t perform any differently than campaigns without bad ads. There are other factors that need to be tested including average ctrs across a campaign (does a campaign with 2 0.50ctr ads perform better than one with 0.75 and 0.25 ctr ads or vice versa), banned ads in a campaign (do banned ads in a campaign affect the good ads?), etc. Additionally, it would be interesting to run this same type of test across multiple accounts to test for account quality score (do accounts with lots of bad campaigns perform worse than accounts with no bad campaigns).

So, from this quick experiment we can conclude that having a campaign with hundreds of shitty ads in it does in no way affect the overall performance of the rest of your good ads. So spam away :)

(PS: sorry I couldn’t provide screenshots for the final results … the first shot was taken about a week ago and I just recently reformated so I don’t have a copy of photoshop installed).


ILLEAT.com | Affiliate Marketing, SEO & Making a Living Online

Facebook Social Ads Command Center

Posted on: June 14th, 2008 by Nick

Hmmm…command center may be a little overblown, but groneg from #cakes asked to take a peek at how I setup my Facebook campaigns server side so I figured Id just post a shell of the script that I send all of my ads through. This requires that you have DNS wildcards setup so that you can do cool stuff like true.domain.com, singlesnet.distracts.net, etc, but you can also modify it to accept parameters to index if you’d prefer that (comment if interested and Ill help ya out).

Some things to pay attention to:
if ($cloak) $offer = : This is the page to send a Facebook intern to … useful for getting your porn ads through.
$redirect : Set this to 1 in your case statement if you want to scrub out your referrer. This technique is covered in Scrubbing Your Traffic with Meta Redirects.
$iframe : If you want the offer to be iframed for whatever reason, set this to 1.
$landing : Set this to 1 for a VERY simple landing page. My Facebook lps are a single image with a link and title. Look at the third if case for the flags to set.

Anyways, here’s my code … feel free to post any questions you have in the comments and Ill do my best to answer.

Facebook Command Center - PHP CODE


ILLEAT.com | Affiliate Marketing, SEO & Making a Living Online

Scrubbing Your Traffic with Meta Redirects

Posted on: May 26th, 2008 by Nick

Its pretty common knowledge among the affiliate marketing industry that you have to hide your traffic sources. Regardless of of the kind of relationship that you have with your network and affiliate manager, its bad business to expose all of the search terms, traffic sources and content that you are using to actively promote a given offer. Without going into too much of the specifics on this topic, I wanted to real quickly post the method that I use to scrub the referral data from my direct linked campaigns.

In a nutshell, the script works as follows:

PPC AD –|> Redirect Domain (with this script) –|> Offer

While a lot of people advocate the need for a double meta redirect, this is simply for a direct linked campaign so I really don’t care of the network figures out my redirect domain (as this page simply 301s to an offer page). If you have an LP that you want to hide or don’t want to expose the original redirect, then you can simply setup a double meta redirect, which I won’t cover here.

You can pass subid’s to the script by appending ?s=BLAH to the page. For example, I’d setup the link as follows: www.myredirectdomain.com/fathersday/index.php?s=men18t20

Anyways, here ya go and hope that some of you find this useful :)


<?
$offer = "http://www.incentaclick.com/nclick.php?id=11323&cid=4339";
if (isset($_GET['s'])) $offer = $offer . “&sub=” . $_GET['s'];

if(isset($_GET['go'])) $go = $_GET['go'];
if ($_SERVER["HTTP_REFERER"] && $go) {
//This means we tried the redirect and it failed.
//We can try another redirect, or simply display a text link
//like this code does.
echo “<center><a href=’$offer’>Please click here to continue.</a></center>”;
return;
}
else if ($_SERVER["HTTP_REFERER"]) {
//User has not yet been to this page (because $go) isn’t set, so well
//do the meta redirect.
$me = “http://” . $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
echo “<html>\n<head>\n<title>Page Loading…</title>\n”;
echo “<meta http-equiv=\”refresh\” content=\”1;url=”;

// Way of keeping subids in tact … works for my setup, may not
// work for all … I setup my links as www.mydomain.com/?sub=blah
if (stristr($me, “?”)) echo “$me&go=1″;
else echo “$me?go=1″;
echo “\”></head><body></body></html>”;
}
else {
//No referer is set so no need to fuck with meta redirects.
//Simply forward the user.
header(”Location: $offer”);
}
?>


ILLEAT.com | Affiliate Marketing, SEO & Making a Living Online

Laundering your Facebook Traffic

Posted on: May 23rd, 2008 by Nick

They say Facebook is Like Crack...

DISCLAIMER: This post, like all of the other posts on this blog, was for informational purposes only. It was written for a friend who lost 10K worth of commissions from an advertiser after 2 weeks of sending facebook leads. It was not written to encourage screwing over merchants/advertisers in any way. Anyone who knows the services and sites I run, knows that I like to keep everything 100% WH :)

So, we all know that Facebook is great for driving massive amounts of traffic in relatively little time. They’ll throw their email, zip or contact info to any form they see, wander around for a bit, then bail out before moving on to super poke their friends. Now, the biggest issue with Facebook traffic is that it converts pretty bad on the advertiser’s end. I’ve heard stories of people having thousands of dollars rescinded from their accounts because the advertiser wasn’t happy with the lead quality. So how can we as affiliates using Facebook protect ourselves from this?

Simple: use other sources to supplement your Facebook traffic.

This is something that I used to do back in the days of cookie stuffing. I didn’t want the networks to see that all of my traffic was converting several hours or days after the cookie was set so I’d set up crapper pages to funnel in some real traffic that would convert on the spot. You use the shady source to send volume, and the legit source to trickle in clean leads.

We can do the same thing with Facebook. I’m gonna use Auto Insurance as an example because I know it does well on Facebook and there are a lot of merchants who have begun rejecting the traffic because of poor lead quality. This makes sense if you think about it … male college student sees a bright red flashy enzo appear in their sidebar, clicks the ad to see what its about, selects the state he’s in to see the car (we get paid), then, upon seeing the next screen asking for ton’s of personal info, decides its not worth the trouble bails out and moves on. We get our $3 lead, the advertiser gets nothing. So in order to keep our Facebook campaigns alive and running, we can setup some paid search campaigns targeting ‘buy’ Car Insurance terms to drive some leads that are much more likely to convert on the advertisers end. Now, because auto insurance is such a competitive market in search, chances are we’ll be running this campaign at a lost. This is fine though. Our goal is to simply send a handful of fully-qualified leads a day to the advertiser to make up for the facebook traffic that we’re sending in volume. I’d recommend using Microsoft Adcenter (hit up my PPC Coupons page if your looking for some free money to play with ;) as they are normally the cheapest in terms of click cost and normally convert the best. In a niche like this, a single conversion will often make the advertiser upwards of $1,000 a year, so if you can send a couple a day, they’ll be cool. Also, be sure to kill the referrers on all of the traffic that you send, especially if you are direct linking. If you don’t know how to scrub your referrals, do a search for meta redirect…I’ll prolly be posting some code for this later in the week too as I’ve been helping a few people on IRC make sense of it.

That’s it :)


ILLEAT.com | Affiliate Marketing, SEO & Making a Living Online

Messing Facebook Social Ads - Take 2

Posted on: May 23rd, 2008 by Nick

Facebook Social Ads

Alright … its been over a month since my last post on Facebook Social Ads, and in that time, I’ve been spending a lot of time scaling up my facebook campaigns and really getting to know their system. I’ve picked up a few more tidbits of knowhow that anyone getting started with advertising on facebook should know. Anyways, here are a couple more pointers to help you out if your struggling to make sense of fb (these are aimed at people who are just getting started, so if you’ve been in the game for a while, no flaming ;)

Facebook spaces out your ad spend throughout the day
For some reason, it took me the longest time to realize that Facebook spreads out your adspend (and with that, your impressions/clicks) throughout over a 24 hour period. So if you have a daily budget of $250 (you can find out your current budget by clicking on the Billing tab in the Ad Manager), their system will serve your ad impressions at intervals throughout the day with your very last batch of impressions coming around 11-11:30 at night … this assumes, of course, that you have a campaign that is ‘good’ enough to deplete your budget. The fact that Facebook does this can be used in your favor: for example, I have a campaign running that converts best from around 3:00pm to 8:00pm, while only performing so-so the rest of the time. So if I pause my campaign until 3 and then resume it, Facebook will serve my ads at an increased rate so as to get it back on track with the daily spend. This allows me to get a much better campaign ROI while still being able to deplete my budget.
Campaign Budgets take 24 hours to update
I think nickycakes told me about this a while ago, but for some reason it slipped my mind until just the other day when I was tuning a new campaign. When you create a new campaign, it asks you to set the maximum you are willing to spend on that campaign. Most people will set their budget really low when first launching a campaign so they can see whether or not it is a winner. However, if the campaign does turn out to have potential and you want to scale up your spend, the changes won’t kick in til 24 hours from when you set it. Nothing magic here…just something that may save you some headache if your trying to figure out why the impressions stopped on your golden campaign. O yeah, and campaign budgets are spread out through the day just like daily budgets are :)
You’re Ads are going to get Jacked…Deal with it
Because of how easy it is to fire up new campaigns and ads, there are tons of people out there who are constantly checking the ad board and looking for prospective offers to run. In less than 5 minutes, they can copy your picture, ad text, title and offer and submit a dozen variations or copies of your ad. This is just how it works on Facebook…not much you can do about it other than squeezing the most you can out of your campaigns before they become saturated. And targeting different demographics and countries doesn’t help…especially when you got guys like concord cycling through proxies and profiles all day scraping the adboard.

Aim to get a $1,000 Account
Because of the way that Facebook distributes your impressions, its very important that you get your account maxed out especially if you find yourself a killer campaign. Facebook will increment your account around 2 days after (at least on my accounts…may be different on other accounts) you reach your budget. The increments go from $250 to $350 to $500 to $750 to $1000. Counting the time between updates, itll take you around 2-3 weeks to max out a newly minted account. Its also important to have a high limit campaign because of the above reason (competitor’s stealing your ads).
Think outside the Box
I’ve chatted with a handful of people who contacted me after reading my first post and its amazing how many of them are trying to promote offers targeting the same ol demographic. I think people assume that facebook = college students and are solely trying to appeal to this crowd. Play around with the targeting to see the wide demographics you can hit (theres 1.3 million women over 30 on fb, for example). There are tons of offers that work outside of dating, scholarships and free iphones.

Hope that helps some of you. In the words of Diorex (who’s blog is back up), your mileage may vary.


ILLEAT.com | Affiliate Marketing, SEO & Making a Living Online

Quick Recap of Past Couple of Weeks

Posted on: May 23rd, 2008 by Nick

First off, gotta apologize for lack of updates. I think in my intro post I said I was planning on doing a few posts a week, and since then have done 2 in two months. Thats pretty pathetic, ain’t it?

Anyways, my lack of posting is due to a few projects, ppc/organic campaigns, and school. I’m set to graduate in June and have everything in order to give online marketing a go for my full-time career. It’s pretty cool being able to pass up on all the job fair and interview bullshit that I see my friends going through :)

My sites and campaigns are all doing great. I just entered a new financial niche that I’ve been promoting fairly heavily and am already ranking #3 for one of the brand terms I was shooting and doing around 5 leads a day. Looks to be a solid niche and one that I plan to invest a good amount of time in.

I recently had lunch with a partner of Howard Lindzon (VC who created Wallstrip and has stake in companies such as LifeLock and TubeMobile) who was interested in hearing more about AdGridwork. While there was not much they could do for us financially (Kyle and I can adequately fund the service as is), we did spend a few hours chatting about life in San Francisco for entrepreneurs and ‘web 2.0′ guys. I have to say, it definitely sounds like a shitload of fun.


For my senior project at Cal Poly, I implemented a click-based analytic package that can be used to monitor an unlimited amount of sites and hold all the data inhouse (unlike CrazyEgg who limits the number of pages you can monitor and aggregates your data on their own servers). After showing it to a few of my am buddies, I decided it may be a cool service to release and so I’ll have that rolled out by June. The service is called Pyroh and can be found at Pyroh.com (the Download Now link is a lie).

Finally, I’ve been spending a ton of time promoting offers through Facebook. I’ve got about 4 campaigns right now that are performing great and I’ve consistently hit my daily budgets across 2 accounts while getting XXX% ROI on the network side. While the money made through Facebook has been dwarfing the revenue from my organic sites and ad network, I’m still a little weary about how long the ride will last, so I’m trying not to become too reliant on it. Gotta strike while its hot, though.

Anyways, I just finished up another couple of pointers for people getting started with Facebook that I’ll be posting in a few, so if thats your cup of tea, be sure to check it out. Also, I’ll write a quick blog post when I launch Pyroh as well for anyone interested in checking it out.


« Previous Entries