Andrew Welch · Insights · #SEO #frontend #craftcms

Published , updated · 5 min read ·

Please consider 🎗 sponsoring me 🎗 to keep writing articles like this.

Modern SEO: Snake Oil vs. Substance

SEO has got­ten a bad rap; but much of it deserved­ly so. Here’s a guide to how mod­ern SEO should be done

When­ev­er a client I’m work­ing with talks about an SEO firm they’re engag­ing, I take a deep breath. While there are most cer­tain­ly some very worth­while SEO firms out there, they are few and far between.

I’ve seen clients charged piles of mon­ey for what are effec­tive­ly just rec­om­men­da­tions copy & past­ed from WooRank, Google Page­Speed Insights or oth­er auto­mat­ed tools. These are great tools, and I use them all (see the A Pret­ty Web­site Isn’t Enough arti­cle), but copy & past­ing boil­er­plate is not much of a ser­vice to anyone.

I’ve seen all sorts of neb­u­lous claims and dubi­ous prac­tices ban­tered about. And it works; there are tons of com­pa­nies out there that do noth­ing but SEO.

The reason it works is like cures for baldness or fad diets, SEO promises something that everyone wants. It plays on our base desires.

Every­one wants to be on the first page of Google’s search results. Every­one dreams of just putting a web­site up, and hav­ing the world beat a path to their door. But it does­n’t work that way, folks. Think about it: every­one else wants to be on the first page of Google’s search results, too.

To quote one of my favorite movies:

You’re not special. You’re not a beautiful and unique snowflake. You’re the same decaying organic matter as everything else.

Okay, so that’s a bit harsh. But there is a ker­nel of truth, which is that it’s utter­ly implau­si­ble for every­one to be on the first page of Google’s search results page (SERP). There are at most 10 search results per page, and there are mil­lions of web­sites out there. If every­one is spe­cial, then no one is.

Google’s entire busi­ness mod­el thrives on doing one thing: giv­ing peo­ple what they want when they search for some­thing. And your web­site may not be what peo­ple want, no mat­ter how awe­some you think it is. Short of alter­ing the nat­ur­al order of things, your web­site will even­tu­al­ly rank exact­ly how it should on the SERP.

Back in the day, unscrupu­lous SEO firms tried to alter the nat­ur­al order of things by gam­ing the sys­tem. Some still do, but with Google active­ly pun­ish­ing SEO spam, it’s a much less attrac­tive prospect. Indeed, Google has changed their core algo­rithms in such a way that will make many a busi­ness mod­el obsolete.

Today, there’s talk of inbound mar­ket­ing, out­bound mar­ket­ing, SEO, SEM, growth hack­ing, and on and on. The SEO indus­try is large­ly a B2B indus­try — but I don’t mean Busi­ness to Busi­ness — I mean Buzz­word to BS. But it can’t be all bad, can it? It’s not.

There are legit SEO firms that do A/B testing, quantify results, and approach SEO/SEM as a real science.

But I’m being over­ly crit­i­cal here on pur­pose: because they are not the norm.

Before we get into what mod­ern SEO is, it’s instruc­tive to talk about what it isn’t. SEO isn’t an art. There’s no crys­tal ball. No black mag­ic. No chick­ens need to be sac­ri­ficed. It’s deter­min­is­tic, and measurable.

Here’s an exam­ple of what real SEO test­ing looks like.

Link Modern SEO

It’s not all doom and gloom; there real­ly are things we can do to make our web­sites per­form bet­ter on the SERP. But it isn’t mag­ic, it’s work.

Modern SEO is really about best practices.

Here are the most impor­tant things you can be doing from a mod­ern SEO point of view:

  1. Cre­ate good content
  2. Imple­ment good tech­ni­cal SEO
  3. Make sure your site is performant
  4. Mon­i­tor, test, and revise your site
  5. Pro­mote your site

Gosh, that seems pret­ty obvi­ous, does­n’t it? I’ll go into the nuances of each.

Link Create good content

Design­ers, devel­op­ers, and mar­keters are all very used to cre­at­ing web­sites that are good for peo­ple. They look good, and they are rich in content.

By doing so, they are serendip­i­tous­ly also mak­ing web­sites that are good for search engines. Remem­ber, Google’s goal is to return results that peo­ple want when they search for some­thing. So if you cre­ate some­thing that peo­ple want, you’re halfway home.

If you cre­ate con­tent that is good, peo­ple will share it. They will link to it. You might even become the answer of author­i­ty on some par­tic­u­lar topic.

This is how flowers market themselves. They don’t bombard the local bees with “email blasts”, they just look & smell pretty.

The con­tent also has to be about a prod­uct, ser­vice, or inter­est that peo­ple care about. I can write the absolute best con­tent in the world about the mat­ing habits of the Abo­rig­i­nal Shrew Rat, but the appeal just isn’t that broad.

Cre­at­ing good con­tent means that your con­tent should reflect well the key­words that you think peo­ple might search on to find it. Remem­ber, it’s not what you think the con­tent is about, it’s what words peo­ple will use when they search.

There are many tools out there that will give you the top key­words your con­tent reflects; if you’re using Craft CMS, the SEO­mat­ic plug­in’s SEO­met­rics fea­ture will do it for you.

The con­tent should also be eas­i­ly read­able; there are many auto­mat­ed read­abil­i­ty tests out there, the Flesch – Kin­caid read­abil­i­ty tests are a pop­u­lar one. Again, SEO­mat­ic will do this for you, and there are also web­sites that will do it for you as well.

Before you write the con­tent for a page, you should think about what search terms you think peo­ple may be using to find your page. Then write your con­tent with them in mind, and build into your work­flow the test­ing of that con­tent to ensure that it reflects your goal key­words and is eas­i­ly readable.

Just as you’d make an out­line of key con­cepts before writ­ing a term paper, do the same here. Don’t go all crazy key­word-stuff­ing, because that will just annoy peo­ple who actu­al­ly read your con­tent, and search engines are pret­ty smart at sniff­ing it out as well.

Do, however, ensure that you have keyword consistency in your Heading tags, in your image’s ALT properties, in your page <title> tag, in your URLs, and in your content.

Final­ly, use your Google Ana­lyt­ics and the Google Search Con­sole to see the search terms that peo­ple are actu­al­ly using when they find your page, and adjust as needed.

Link Implement good technical SEO

Once we have good copy writ­ten, we then need to do a good job with the tech­ni­cal SEO imple­men­ta­tion. A good tech­ni­cal SEO imple­men­ta­tion is all about the poten­tial for your con­tent being well received.

If you show­er, shave, do your hair, put on nice clothes, maybe some cologne or per­fume, and have a smile on your face, you stand a bet­ter chance at meet­ing that spe­cial some­one than if you roll out of bed with Dori­tos stains on your shirt.

It does­n’t mean it is going to hap­pen, but it cer­tain­ly makes it more like­ly. So let’s unleash our potential:

  • Valid HTML — Your web­site should pass the W3C Val­ida­tor to ensure that peo­ple and bots alike will be able to con­sume it
  • Meta Tags — The title, meta descrip­tion, and oth­er tags should be of the right length, and should be unique on a per-page basis
  • https — Your web­site should be encrypt­ed with https; cer­tifi­cates are free now with LetsEn­crypt so there’s no excuse!
  • XML Sitemap — You should have an XML Sitemap that you sub­mit to Google so that it knows how to crawl your pages
  • Struc­tured Data — You should be imple­ment­ing JSON-LD Struc­tured Data so that Google can add it to their Knowl­edge Graph, or dis­play it on the SERP via Rich Cards (which is just a name for a sub­set of JSON-LD Struc­tured Data). Check out the JSON-LD, Struc­tured Data and Erot­i­ca arti­cle for more on JSON-LD Struc­tured Data.
  • Mobile Friend­ly — Your web­site should do well on the Google Mobile Friend­ly test
  • Twit­ter Cards — Imple­ment Twit­ter Cards so that when some­one shares a link on Twit­ter, you can attach your brand­ing & mes­sage to it
  • Face­book Open Graph — Imple­ment Face­book Open Graph for social shar­ing on Face­book, Pin­ter­est, and Slack
  • Key­word Con­sis­ten­cy — Have key­word con­sis­ten­cy in your Head­ing tags, in your image’s ALT prop­er­ties, in your page <title> tag, in your URLs, and in your content
  • Robots.txt — robots.txt is a text file that instructs robots (typ­i­cal­ly search engine robots) how to crawl and index pages on the website
  • URL Opti­miza­tion — Your web­site URLs should be descrip­tive but con­cise, human read­able, and with­out redi­rects if pos­si­ble. Like this: not like this:
  • rel=publisher — Imple­ment the <link rel="publisher"> tag (yes, Google+ is good for some­thing), because it can affect how your brand is rep­re­sent­ed on the SERP
  • Head­ing Tag Hier­ar­chy — Head­ing tags should be used to effec­tive­ly struc­ture con­tent on the page
  • Don’t Dupli­cate Con­tent — If you present the same page at mul­ti­ple URLs, use <link rel="canonical"> to ensure that your con­tent isn’t diluted

This may seem like a big list, and there’s only so much time in a day. That’s why you should lever­age tools like SEO­mat­ic (or what­ev­er exists for your CMS of choice) to do the heavy lift­ing for you, rather then rein­vent­ing the wheel.

You’ll notice that while many of these bul­let points are for search engines, oth­ers are for humans as well. That’s because you real­ly want your con­tent to be share­able and acces­si­ble these days, and that means mak­ing it good for humans, too.

If you’re one of the cool kids who is using a JAM­stack, make sure you are doing serv­er-side ren­der­ing of your JavaScript-gen­er­at­ed con­tent. While Google in the­o­ry ren­ders JavaScript, in prac­tice, it’s anoth­er story.

While there’s cer­tain­ly more that can be done, this is a real­ly sol­id foun­da­tion for good tech­ni­cal SEO.

Link Make sure your site is performant

As the A Pret­ty Web­site Isn’t Enough arti­cle makes clear, per­for­mance mat­ters. It mat­ters to peo­ple, and can great­ly affect your bounce rate, brand pres­tige, and so on. But it also mat­ters in terms of SEO.

Many peo­ple are aware that Google made page speed a rank­ing indi­ca­tor for the search engine results page. But if that’s not a com­pelling enough rea­son to make your web­sites per­for­mant (and it should be!), read on.

Google has a bot called — amaz­ing­ly enough — Google­Bot. It crawls your web­pages and index­es them; but it has a crawl bud­get for each web­site, and even each web page on that web­site. Once Google has blown its crawl bud­get, it wan­ders off to index some­thing more interesting.

So the more per­for­mant your site is, the more pages Google­Bot can index with­in its crawl bud­get. That means bet­ter cov­er­age for your web­site as a whole, and bet­ter cov­er­age of your long-tail search con­tent that Google deems less important.

So make your web­sites fast. You might even con­sid­er mak­ing Google AMP ver­sions of your pages, if it makes sense in your par­tic­u­lar case.

Link Monitor, test, and revise your site

So you’ve done all of this, you’ve writ­ten great copy, your tech­ni­cal SEO is nailed, and your web­site is fast. We’re done, right?


SEO is not a sta­t­ic thing; it’s some­thing that needs to be mon­i­tored and curat­ed. If your client does­n’t have the bud­get for that, that’s fine. But it will make a dif­fer­ence if they keep you or some­one else on retain­er to do con­tin­u­ous SEO mon­i­tor­ing and curation.

Let your clients know that a website without active SEO curation is like a car that’s never taken in for regular maintenance. It’ll decline over time.

That means cre­at­ing new con­tent, shar­ing it via social media chan­nels, and it also means ana­lyz­ing your Google Ana­lyt­ics and the Google Search Con­sole on a reg­u­lar basis to see what’s work­ing, and what’s not.

For larg­er orga­ni­za­tions, it means A/B test­ing to see what peo­ple are respond­ing to, and what they are not. It also means mon­i­tor­ing your call to action fun­nel to see where peo­ple are drop­ping off.

A full dis­cus­sion of all of this is beyond the scope of this arti­cle, and it very well may require hir­ing an SEO firm if it’s beyond what you nor­mal­ly do. Just be choosey about who you hire.

If they talk about link build­ing” or get­ting on on the front page of Google”, run. Fast.

I always run the web­sites of the SEO firms I work with through a bat­tery of SEO & per­for­mance tests before meet­ing with them. If they can’t get it right on their own web­site, it isn’t instill­ing much con­fi­dence on how they’ll do on mine.

If your tech­ni­cal SEO is good, you have good con­tent, and your product/​service is good… you prob­a­bly don’t need an SEO firm at all.

There. I said it.

Link Promote your site

I real­ize that in an age of social media, and growth hack­ers, this will come as a shock. But yes, you do need to pro­mote your website!

Whether that’s via social media cam­paigns, tra­di­tion­al print adver­tis­ing, Google AdWords, or what have you, it still needs to be done.

In the movies, If you build it, they will come” may work, but not in real life where mil­lions of com­peti­tors are just as eager to get noticed as you are.

You can build the best wid­get in the world, but if no one knows about it, you can’t sell it. Which means peo­ple can’t ben­e­fit from it, and you end up resign­ing your­self to being a goat herder in Mongolia.

I list­ed this last because it’s fair­ly obvi­ous, hope­ful­ly, but also because you real­ly want to do every­thing else first.

Before you spend buckets of money on an advertising campaign, have your good content, technical SEO, and performance nailed. That’s how you’ll get the most bang for your buck

It does­n’t make any sense to both­er with writ­ing good con­tent, SEO opti­miza­tion & per­for­mance opti­miza­tion only after you’ve start­ed an expen­sive ad cam­paign. Use your ad cam­paign as tin­der to light the blaze of SEO glo­ry. If you’ve built it just right, it’ll go.

If you want to learn more about SEO, the Begin­ner’s Guide to SEO arti­cle is a great place to start.

Good luck everyone!