Free PPC Campaign Builder vs $497 SpeedPPC

I’m not sure what happened, but Derek has abruptly stopped making the tool available and has asked everyone to stop using it…

When I first heard about SpeedPPC, I rushed out and bought it for $497. I’ve been very happy with it, and in the grand scheme of things, an awesome tool. Depending on how much Pay-Per-Click Internet advertising you do, the $499 isn’t a significant deterrent. I think I recouped the cost easily with the first Adwords campaign I build with SpeedPPC.

Recently, Derek Beau released PPC Campaign Builder a PHP-based alternative that provides very similar functionality to SpeedPPC. Released unto the GNU Open Source license, it is effectively a free alternative.

Having used both, I’d say that it all boils down to this:

Feature SpeedPPC PPC Campign Builder
Cost $497 Free
Requirements Windows PC PHP web server
Supports Adwords & Adcenter Adwords
Expansion Lists Included Not included
Save (file) Yes No

Given the Open Source nature of PPC Campaign Builder, there’s a good chance of significant future improvements. However, given the secrecy of affiliate marketers, a lot of the burden of work may remain with Derek.

SpeedPPC, as a commercial enterprise, is likely to keep building features. From what I read on the SpeedPPC Members Forum, support for Yahoo Search Marketing is just around the corner!

If you’re dabbling with Internet marketing, then free never hurts.
If you’re not a coder, want business-level support & upgrades, then you might want to stick with SpeedPPC.
Get more information about PPC Campaign Builder or SpeedPPC, and decide for yourself.

Sales Technique

I was watching Boiler Room a few days ago, and came across this memorable scene:

And there is no such thing as a no sale call. A sale is made on every call you make. Either you sell the client some stock or he sells you a reason he can’t. Either way a sale is made, the only question is who is gonna close? You or him?

Keyword Analysis for Affiliate Marketers (Part 2)

If you’re having a high percentage of clicks lost on your landing page (that is, they never click on your affiliate links), it could be that you just have bad keywords. But how do you know who hits your landing page, but never clicks through to the offer?

Here is code that I put on my landing page itself:

<?php
$key = htmlspecialchars($_GET['key']);
$ovkey = htmlspecialchars($_GET['OVKEY']);
$ovraw = htmlspecialchars($_GET['OVRAW']);
$filename = './logs/' . $key . '.txt';
$content = 'HIT!, ' . $_SERVER["REMOTE_ADDR"] . ', ' . date(”h:iA”) . ', ' . date(”Y-m-d”) . ', , ' . $ovkey . ', ' . $ovraw;
$handle = fopen($filename, 'a');
fwrite($handle, “$content\r\n”);
fclose($handle);
?>

Basically, everyone hitting my landing page, generates a line in my log file. An example is:
HIT!, 70.170.13.79, 04:42PM, 2007-07-20, , test-ovkey, test-ovraw

Using the combination of HIT! and JUMP log entries (JUMP was covered in Part 1), you should easily be able to track which keywords get to your landing page and never go onto the offer. The simple way I do this is:

  1. Cut and paste your log file into Excel
  2. Use Excel’s TEXT TO COLUMN feature to break the comma-delimited fields into separate columns
  3. Sort by Keyword (which should be Column E) and IP address (Column B)
  4. Then eye-ball the results. I do it “mentally” because I find that I am able to discern trends alot quicker and more accurately this way.

Some simple analysis I do:

  • Sorted by Keyword, you should be able to see if a Keyword gets alot of HIT!’s (which means it’s a popular keyword).
  • See if any keyword gets a higher number of HIT!’s than JUMP’s. That will surely indicate that these people (who clicked through using that keyword) didn’t like your landing page (assuming your LP looks good, it probably means that they weren’t looking for what you were selling).
The ultimate list of all current Billboard hit singles

Adding to my previous list of video games and list of new DVD releases, here is a list of all (current) singles in the Billboard charts (hit songs). The list of 353 (with song title and artist) has been compiled over the past month (it has any song that has been on the Billboard top 30 across all categories in that time).

List of all current Billboard hit singles (song/artist)

I pull this information automatically on a daily basis. So whenever a new song enters the charts, I know about it! If you find this list useful, please post a comment. If i get enough interest, I’ll publish the updates.

Keyword Analysis for Affiliate Marketers

I previously showed how to do link cloaking using PHP.

I’ve been modifying it to help me tune my campaigns a little better, so I thought I’d share the latest version.

This is the PHP file that you’d call for your jumps…

<?php
// Edit this key for the secret part of your keyword encryption
$encryptkey = '123';
// Edit this array for your offer jumplinks
$path = array(
'azoogle' => 'http://x.azjmp.com/XXXXX?sub=',
'copeac' => 'http://www.cpaclicks.com/redirect.asp?a=xxxx&b=xxxxx&d=0&l=0&p=0&o=',
);
// Use the 'key' variable (set at the destination URL of your ad) so you know which ad-network or ad-group the user is coming from
$key = htmlspecialchars($_GET['key']);
$ovkey = htmlspecialchars($_GET['OVKEY']);
$ovraw = htmlspecialchars($_GET['OVRAW']);
$mdkey = md5($encryptkey . $ovkey);
$filename = './logs/' . $key . '.txt';
$content = 'JUMP, ' . $_SERVER["REMOTE_ADDR"] . ', ' . date(”h:iA”) . ', ' . date(”Y-m-d”) . ', ' . $mdkey . ', ' . $ovkey . ', ' . $ovraw;
$handle = fopen($filename, 'a');
fwrite($handle, “$content\r\n”);
fclose($handle);
if (array_key_exists($_GET['id'],$path))
header('Location:'.$path[$_GET['id']].$key.'-'.$mdkey);
?>

The code is rather complex, so I’d recommend you learn PHP if you want to modify it to your liking. But as it is, the code works fine if you just want to cut-and-paste it onto your site (you’ll of course need to replace the jumplinks with your affiliate links :D ).

To summarize what this code does:

  • It encrypts the keyword using an MD5 hash (which is one-way encyrption, so people can’t reverse-calculate your keyword) and sends it as a SubID. [I]Note the way I’ve provided the Azoogle and Copeac jumplinks. Azoogle requires the “subid” key, and Copeac uses the “o” key to input the SubIDs.[/I]
  • Write to $key.txt, a line that tracks IP, time/date, the OVKEY (keyword), OVRAW (what the user actually typed) _and_ the actual MD5 hash.

The log file will end up with a line like this:
JUMP, 70.170.13.79, 04:42PM, 2007-07-20, 202cb962ac59075b964b07152d234b70, test-ovkey, test-ovraw

Some simple analysis you can run on the logs:

  • Look at your conversions at your affiliate company. From their stats, you’ll see which MD5 key converted. So you can easily do a search against the log file to find out the real keyword which lead to the sale.
  • Compare your log against your affiliate company stats. If you’re getting click-throughs but no conversion, you might want to remove that keyword from your campaign.

NOTE: in the code, modify $encryptkey to your own secret password. The MD5 hash is calculated using the $encryptkey pre-pended to your keyword (so in the example above, the MD5 is calculated against “123test-ovkey”). This is just another layer of secrecy for you to sleep better at night ;)