Selling Software to Snake Charmers, and Other Mistakes

Here are three stories from software startups that inadvertantly advertised to a very different audience than expected, followed by easy steps to check if you’re making a similar costly mistake, and tips for avoiding it in the future.

Selling a Data Science Platform to Snake Charmers

Snake in the Office

In 2015, Domino Data Lab was still a young data science platform startup with a team of ~10. After getting some traction in the market, it was time spend on marketing…

So, like many companies (including their competitors), they started advertising on Google AdWords for keywords related to data science: python, julia, machine learning, and so on…

Target Keywords

Things looked good in the AdWords dashboard. For a young startup, $572 a month is not nothing, but seems worth it for 624 visitors.

One of the first things I did when I was brought in to help them was take 10 minutes to look through their AdWords campaign. I always do this with a new client because AdWords frequently bleeds money due to some know-better error, which goes undetected if there isn’t a reliable conversion-tracking solution in place (ie, they don’t know where their sales are coming from).

Anyway, a few minutes into my “let’s make sure we’re not burning money” check, I look at the actual search terms people used before clicking on an ad, and suddenly I’m reminded that python isn’t just a programming language but also… a snake.

Snake Searches

Pause campaign. Open Slack. “You were spending $500/month to advertise to snake enthusiasts. I turned it off.”

The ads were also (undoubtedly) getting clicks from people learning to program, who are only a sliver more likely to buy enterprise software than snake researchers.

Stressed Out Snake

Despite the early exposure to the serpentine market, Domino stuck with what it did best, and has since grown to 100+ employees and has done very well.

Selling Software to Freeloaders

People don’t read search results—they just click. So you might think that well written ads would screen irrelevant traffic, but they don’t.

Not long after the snake incident I was brought in to help another software company that was selling to app development companies (think mobile game studios, social media apps, etc). They had 50+ people, Series A funding, and a significantly larger marketing spend.

Nevertheless, I did a 10-minute AdWords sanity check (the exact steps are outlined below). I saw there were target keywords like app downloads and app installs to attract user acquisition managers who want to track app installations and attribute them back to campaigns. But…

You know what’s coming…

Pause campaign. Open slack. “Hey, there was a campaign spending $X,000 a month on people searching for free app downloads. I paused it and will overhaul it.”

The Most Expensive 404 Page

When I was helping Netlify—a platform for modern web projects—I caught another interesting AdWords error that was throwing away* money, but in a different way.

I was analyzing how different landing pages affected trial signup rates, when I noticed an unusually high number of visitors from AdWords landing on the 404 error page.

Netlify's 404 Error Page

A quick dive into AdWords and a few email inquiries later, we learned that a) the site’s URL structure had been changed, b) not all old URLs were redirected, c) there were still ads in AdWords sending (not cheap) traffic to those old URLs and therefore to the 404 error page.

Pause campaign. Open Slack… Well, this was a quick fix so no need to interrupt the campaign.

* Amazingly, visitors who landed on the 404 error page still signed up at a rate just slightly below the site-wide average, so it wasn’t a complete waste. Bravo to the Netlify designer for creating the highest-converting 404 page I’ve ever seen, but I still don’t recommend doing this.

Spot and Avoid This Costly Mistake

Could Happen to You

It takes less than 10 minutes to check if you’re losing money on obviously irrelevant traffic. If you find that you are, it’ll probably be the highest return on 10 minutes of effort you’ll get all year. Plus, you get to tell your team, “Hey, I just stopped us from spending $X on trying to sell software to [dramatically irrelevant demographic].”

Follow these steps to check if you’re spending money on irrelevant AdWords traffic:

Open AdWords and go to Keywords > Search Terms.

View Search Terms in AdWords

In the Search Terms report you’ll see a list of actual search terms for which your ads showed.

Sort by Interactions or Costs to see which search terms are costing the most. Start with those, but don’t ignore the long-tail search terms, which collectively can be using up a lot of the budget. Scan the report for bad (irrelevant) keywords.

Here’s how to fix or avoid this mistake:

1. Narrow the Scope of Target Keywords

By default, AdWords not only shows ads for search terms that match the target keywords, but also for search terms that contain those keywords (in any order), and for vaguely similar search terms. (Google calls this “broad match.”)

For example, having a target keyword of data science would match—and thus show ads for—search terms like using data in science (contains keywords), scientific data (similar to keywords), what is data science, and so on.

Knowing that, here’s how to narrow your target keywords so that your ads show to the intended audience:

  • Add a plus sign (+) in front of each keyword, AdWords will only match search terms that contain that exact word or a very close variant (such as the plural form of a word). For example, +data +science. This is called “broad match modifier” in AdWords.
  • If word order matters—as with data science vs science data—put the keyword into quotation marks: "data science""data science platform", and so on. This will match search terms that contain this phrase. This filter is called “phrase match” in AdWords.
  • If you’re still showing up for (or are concerned about) irrelevant search terms, you can put the keywords into square brackets to match search queries that match that exact phrase (and very close variants such as plural forms) and nothing more. For example the target keyword [data science] will show ads to searchers of data science but not of data science platform.
  • Use two- or three-word keywords to avoid ambiguity, especially if one of the words has multiple meanings.

I typically use a combination of longer target keywords (2-3 words) with broad match modifiers (+), and a list of negative keywords.

For example, the ambiguous python keyword can be replaced with +python +data +science+python +machine +learning+python +deep +learning, etc.

2. Use Negative Keywords

This is a list of keywords that will prevent your ads from showing. You can quick-add keywords to the negative list as you find them in search terms:

Add Negative Keywords in AdWords

However, be careful not to add an overly broad keyword to the negatives list, which could prevent ads from showing for good keywords. Instead, take common words among bad search terms and add those as either broad modified (+foo +bar) or phrase match ("foo bar") negative keywords.

In the python example, adding negative keywords such as snakeeggsgiantburmesebuyfacts, and colt would avoid the majority of snake charmers from seeing the ads.

(While we’re on the topic, if you’re a software company then adding negative keywords such as jobsfreecareerswhy, and how will also help reduce wasteful ad spending.)


I hope this was a helpful and entertaining lesson on keyword targeting and avoiding wasteful ad spending in AdWords. If you discover you’ve been unintentionally advertising to hilariously (or depressingly, depending on the costs involved) wrong audiences, share your story!