Real-time content analysis for better SEO

Yoast SEO IconThe best way to improve someone’s SEO content writing, is to let him do it, and then give real-time feedback. Ever since its first release in 2011, the page analysis functionality in WordPress SEO has always worked when you saved the post. We’re about to change that, and make it real-time. We’ll give you a preview of what that’s like in this post and explain the other benefits.

Online content analysis tool

Because of how it works technically now, we can easily provide our real-time content analysis as a tool online. If you want to see what it looks like, go to our new online content analysis tool. You’ll get live feedback about both SEO aspects of your site as well as stuff like the Flesch reading ease score.

The online content analysis tool is very similar to how it will work in WordPress SEO when we release this, which will probably happen mid-July. Give it a try! We’d love to hear in the comments what you think and what problems you ran into. We’ve already found a few bugs ourselves, that’s exactly why we’re doing this. We want you to try it and tell us what’s broken!

As you can see, we’ve been working on the snippet preview too. No longer will you have an input field for the meta description or the SEO title: you can edit them straight in the snippet preview. This should make it both more intuitive and make it require less screen real-estate. Here’s a quick GIF of it in action:

Snippet Preview in action

Premium SEO benefits

One of the other benefits of this change is that we’ll be able to do something that has often been requested: do content analysis for multiple keywords. This is a feature that’ll be available to WordPress SEO Premium customers soon after the release of the real-time content analysis.

We’re also working on more checks to help you improve your writing, in line with the writing tips we’ve been giving in our Content SEO eBook (which, btw, is on sale this week for just $15!). These will gradually be released as we develop them.

Technical background of the real-time analysis

To be able to do real-time content analysis, the entire functionality has been rewritten in JavaScript (mostly by our awesome new developer Danny Terwindt. There’s actually a GitHub repository for this specific bit of code. The developers among you will wonder why it’s a separate repository. Simple: this rewrite allows us to expand to more platforms.

We’d love your input!

As I said above: this is a relatively early “release” of this code. We’d love for you to use it and tell us what problems you run into in the comments!

This post first appeared as Real-time content analysis for better SEO on Yoast. Whoopity Doo!

Changing URLs in search results

Google changes URLs in search results - Google the thinker - RodinYesterday Google announced that they’ll change the way they represent URLs in search results. This post explains what is changing, what this means for you and how our WordPress SEO plugin will help you with these changes.

What is changing in the search results?

In their blogpost Google say they’ll changing the following:

  • The website name to be used instead of the domain name
  • The URL structure of the URL as breadcrumbs

Their example images are from mobile search. Up until now, if you have breadcrumbs showing like we do, it would show like this:

Mobile search result with domain name

As you can see that shows the domain name before the breadcrumbs. It already shows the “new” breadcrumbs that have been taken from the URL structure. In the new situation in the US, you can change the domain name to the name of the site, which looks like this:

Sitename instead of domainname

Yoast in these results is, WordPress is It places a lot less prominence on the domain name. You can change the site’s name through new site name markup that was announced in the same blogpost.

In that post they also point at the breadcrumbs markup, which should make those breadcrumbs taken from the URL structure change into your own breadcrumbs. We have to admit: we have breadcrumbs on our site and yet Google is using the breadcrumbs taken from the URL structure for the first two of three total results in that screenshot. We’ll investigate the why and how of what’s happening and keep you up to date.

What this means for your site

This change means that your site’s URL structure becomes even more important than it already was. Ugly URLs will be even more visible in the search results than before. In our eBook Content SEO we wrote at length about site structure for SEO, and this article on site structure is still valid, though a few years older than the eBook.

It also means you have to make sure that your site’s name is reflected well in the search results, so you should use that new markup. In our experience, leaving this to Google is not always the best idea, though it still might ignore what you feed it.

This does mean that whatever you choose as your brand name is reflected more in the search results, and you have to think really hard about what you want that to be. Whether this change positively or negatively impacts keyword rich domain names remains to be seen. It also potentially opens up all sorts of spoofing, where people using yoast.yetanothertld would look the same in the search results as We’ll see how Google responds when that happens.

How WordPress SEO helps you with these changes

Coming Monday (morning US time, evening EU time) we’ll be releasing a new version of WordPress SEO, version 2.1, which, amongst other things, will contain improvements to the breadcrumbs markup, as well as support for the new site name markup. On the Dashboard settings page, you’ll find this in the Your Info tab:

Website name input fields

As you can see, you can now enter a website name and an alternate website name for Google to consider. How Google will use these, especially the alternate name, is of course unknown at the moment, as the feature is brand new.

So: all you have to do is update to 2.1 on Monday, enter your website name and optionally an alternate name and you’re set. Optionally, if you don’t use our breadcrumbs yet, you could choose to implement those breadcrumbs on your site as well.

As more becomes clear about what works and what doesn’t work well with these new features, we’ll be sure to update you in blog posts here. If you don’t want to miss anything, be sure to subscribe to our newsletter.

This post first appeared as Changing URLs in search results on Yoast. Whoopity Doo!

Content Analysis with the WordPress SEO plugin

We’ve been rather busy with the WordPress SEO plugin the last few days. We did a release yesterday and a quick follow up today to fix a few collisions with other plugins. Loads of cool small fixes in there, but one in particular that I think is worth highlighting as it’s something other plugin developers might want to pick up on: a small but important change to our content analysis functionality.

content analysisFor quite a while now, the WordPress SEO plugin has had a page analysis function baked in. The name is misleading, which is why I’ll be changing it soon, as it’s actually not page analysis, but content analysis. If you give it a focus keyword to test for, it analyses the content of your post and gives you hints and tips on how to improve it.

Every once in a while, we’ll get bug reports, on GitHub or through email, telling us that we’re wrong, and that we should analyse the entire page when doing the content analysis. I disagree, which is why we’re not doing it. Let me tell you why I disagree first.

Web Page Segmentation and Content Analysis

Search engines have been able to analyse the content of pages on a block level for quite a while now. Going into the specifics would take too much time here, but if you’re interested, read this post by Bill Slawski from 2009 or even this one, about a Google patent from 2006. Basically, search engines are able to tell what the content bit of a page is, what the sidebar is, what the footer is, etc. Using that segmentation, they judge your page by judging just the content section of it.

Building block level recognition like that into my content analysis function would be…. Undoable. Especially because we know what the content is, so we can just take that and ignore all the other bits. Oh and I’m not even half way smart enough to do the kind of segmentation search engines do and keep your WordPress site running smoothly.

So the content analysis just fetches the posts or pages content and runs it analysis on that. It’s clean, it’s simple and it’s rather fast.

The Issue with Focussing on Post Content Analysis

There’s one issue with this approach. The issue is that WordPress is being used more and more as a CMS. People are adding different blocks of content to pages in more and more ways. Plugins like Pods and Advanced Custom Fields are allowing people to be more flexible with their content blocks. We had to come up with something for that.

Another issue was that we didn’t parse shortcodes when doing the content analysis, causing us not to recognise galleries correctly, the native gallery or galleries added with for instance Next Gen Gallery. This meant we didn’t properly recognise all the images in a post and thus couldn’t output them in XML sitemaps and OpenGraph tags.

Now you might remember from installing the plugin, if you’re a user, that we ask permission to anonymously track data about your site, we collect that data specifically for these kinds of problems. Through this tracking database, which currently tracks about 650,000 sites, we looked at how big this particular issue was. We know that of users who run our WordPress SEO plugin, about half of the sites we track, 10% also run Next Gen Gallery. Pods and Advanced Custom Fields aren’t as popular, but they are both growing, rapidly. So it’s a serious and growing problem. Time to fix it.

The solution

Yesterday, in 1.4.14, we had a first patch that tried to parse shortcodes to discover images for use in our OpenGraph tags. The results were painful. Apparently, loads of plugin developers don’t really understand how a shortcode should work according to its API, so it broke, on loads of sites, horribly. Several plugins suddenly failed, simply because we were doing a do_shortcode outside of the main body and the shortcodes were echoing instead of returning their content or doing rather ugly things to the post_content attribute of the post global. I have to say: that shouldn’t happen. But it did.

So we released 1.4.15 today, which reverted that code. And now we’re left with only one option: providing plugin developers out there with a simple filter. This filter is called wpseo_pre_analysis_post_content and takes 1 argument: a string containing the post’s content. It’s used in several spots within the WordPress SEO plugin, with more to come, and it allows plugin developers to add their custom fields content to the content the plugin analyses by just adding on to that string.

It’s a simple enough change for us to make, but it opens up a world of possibilities. I hope people will use it and I’d love for you to tell us in the comments if you do!

This post first appeared on Yoast. Whoopity Doo!

WordPress SEO Community & Roadmap

Github logoOur WordPress SEO plugin has been getting more and more downloads, bringing it to the top of the most downloaded plugin chart on fairly regularly. With that comes more interest from other developers as well, which is something we absolutely love, but is kind of impossible to manage properly on Which is why we’ve now decided to fully move to Github.

New developer

Recently there were some unfortunate events in the US which caused BlueGlass, a company lots of my friends worked at, to go bust. As with all negatives, there was a good thing that came out of this, as I was able to hire Linh Pham, one of their incredible developers. He’s now come on board full time as a remote worker to fix bugs and develop new functionality across all our free and premium plugins. You’ll probably see him on github if you decide to become active there.


I have many, many ideas for WordPress SEO. I’m slowly speccing these ideas as Issues in github, where you will currently find an 1.6 milestone and a 2.0 milestone. WordPress SEO 1.6 will contain a lot of bugfixes and some smaller enhancements, combined with one bigger new feature: a wpseo_sitemap shortcode that generates an HTML sitemap.

The 2.0 branch already contains a first stab at Google Webmaster Tools integration, allowing for:

  • Easy website verification.
  • Verified submission of the XML index sitemap.
  • Retrieval of crawl errors.

I’m very excited about the potential of that new feature.


This is probably a good time to remind you that if you want to become active in the internationalization of the WordPress SEO plugin, we have a fully functioning GlotPress install on You can register here if you want to help translate. The internationalization for all our plugins, both free and premium is managed by the awesome Remkus de Vries. We currently have 382 registered translators, of which more than half have actually been active in translating, but we can always use more active translators.

As a thank you, for our premium plugins you can get a free single license of a plugin if you translate the plugin into a new language.

Patches welcome!

I have taken the freedom to look at how the Easy Digital Downloads github community is set up and basically copied, pasted and modified some of what they did, resulting in most notably our new contribution guide. But what I really want to say is, we really welcome your pull requests!

I’m very excited about this change and hope it means more people will dive in and help us improve what’s already the most advanced WordPress SEO plugin available today!

WordPress SEO Community & Roadmap is a post by on Yoast - The Art & Science of Website Optimization. A good WordPress blog needs good hosting, you don't want your blog to be slow, or, even worse, down, do you? Check out my thoughts on WordPress hosting!

WordPress threaded comments and SEO

Today my buddy Sander pointed out that he suddenly had pages showing as noindex,nofollow when he ran a spider across a site. A bit more researching learned us that WordPress automatically adds a noindex, nofollow robots meta tag to each URL that has ?replytocom in it. At first I (wrongly) thought this was new to WordPress 3.5, but it turns out to be the default behavior for quite a while already. All the more reason to tell you about it:

What are these ?replytocom links?

Most blogs these days have threaded commenting enabled, which means that you can reply to every comment by clicking on that comments reply link. This is very neat to keep the conversations together and a feature I deeply love. This feature normally works with javascript, but because of accessibility, there is also a fallback option. If you don’t have javascript enabled, or, if you’re a bot, you’re not capable of handling it, you’ll see links that look as follows:

This would force reload the page and give you the option to reply to the comment with ID 1. I absolutely hate that fallback link. On a site like this one, with often over a hundred comments on a post, it means there are 100 links pointing to that same article, causing a lot of crawling that’s totally unneeded. For this reason I added the option in my SEO plugin to remove it, which you’ll find under SEO → Permalinks:

remove replytocom variables option in WordPress SEO

So what does this noindex,nofollow do?

Unfortunately, the robots meta tag WordPress adds essentially makes every URL with
?replytocom in it a dead end street. Because of the nofollow bit of the robots meta tag it adds, if say, Mashable would link to a URL with replytocom in it, my site wouldn’t actually benefit from that link. Doing nothing is much better: the rel="canonical" link element on the page, that points to the clean version, would tell search engines to use that clean version.

This is the reason why, when I found out, I immediately released version 1.3.3 of my WordPress SEO plugin that removes that noindex,nofollow line. I’ve also opened a trac ticket, we’ll see what happens with that. For now, my advice is: upgrade to 1.3.3 and check that remove replytocom variables box, unless you really need the non-javascript version to work.

WordPress threaded comments and SEO is a post by on Yoast - Tweaking Websites. A good WordPress blog needs good hosting, you don't want your blog to be slow, or, even worse, down, do you? Check out my thoughts on WordPress hosting!

WordPress SEO, more secure than ever before.

Sucuri Safe PluginOne of the benefits of making money on paid plugins is that you can more easily spend money for other people to look at and even better, review your plugins. Today is the first result of what might become a somewhat longer tradition: WordPress SEO is now a Sucuri Safe Plugin.

What this means? It means I’ve asked Sucuri to do a full security review of my WordPress SEO plugin. They found a couple of small issues, which I’ve all addressed in the 1.3 release I put out earlier today.

So while 1.3 might not be a major release in terms of functionality, it is the result of quite a bit of work. If you check this commit, you’ll see a ton of little changes have gone into the plugin. Most of them are really minor, but all combined, they make for a better and, more importantly, safer plugin.

I plan to do more updates to my biggest plugins to fix things like this. It’s great to be able to do that because of a, now thriving, paid plugin business. So thank you, to those of you who bought a premium plugin, you are helping us give you a better product!

WordPress SEO, more secure than ever before. is a post by on Yoast - Tweaking Websites. A good WordPress blog needs good hosting, you don't want your blog to be slow, or, even worse, down, do you? Check out my thoughts on WordPress hosting!

Jetpack and WordPress SEO

JetpackThe Jetpack plugin for WordPress has quite a few nice bits and pieces. There’s one issue: the developers at Automattic seem to think they’re alone in the world. In their last release, they enabled OpenGraph tags by default with no setting to disable it. Even when you already have WordPress SEO enabled and OpenGraph enabled in that. This is making people freak  out everywhere as double OpenGraph tags lead to problems with Google+ and with Facebook.

Disable OpenGraph in Jetpack

The best solution, honestly, is to install another plugin by Mark Jaquith, called Manual Control for Jetpack. This disables Jetpack automatic activation of new modules. Now you at least have to manually do something for stuff to break on your site when the Jetpack team decides to push new stuff.

This particular OpenGraph feature is in the Publicize module, so you’d think you could disable that, but that doesn’t seem to work. Instead, adding this line in your functions.php should fix this particular problem:

add_filter( 'jetpack_enable_opengraph', '__return_false', 99 );

I understand that disabling OpenGraph in WordPress SEO could work too. I would recommend against that though, especially if you use our Video SEO plugin as that relies on our ability to control OpenGraph tags.

Calling for Automattic to be more responsible

I also want to call on Automattic‘s Jetpack team. You guys should know better than to do stuff like this. You’ve literally cost me about half a days worth of support work now with this single release. It’d be cool if you, just like the rest of Automattic, would work with the community instead of against it.

I know you’re capable of it, because this line in the plugin:

if ( in_array( 'facebook/facebook.php', $active_plugins ) )
add_filter( 'jetpack_enable_opengraph', '__return_false', 99 );

This shows me that you did think about what would happen if Facebook’s plugin was active. That’s logical because people at Automattic worked on that plugin too. Now next time, please look at some of the repositories most popular plugins too and adjust accordingly. At the very least start a conversation with plugin authors about what’s coming up when you create stuff that clashes.

Update: might be good to note, when Facebook’s plugin is active and OpenGraph is enabled in my SEO plugin, my plugin filters the output of the Facebook plugin to prevent two sets of OpenGraph tags. Niall Kennedy of Facebook has actually also submitted a patch to my SEO plugin to improve how it does OpenGraph. That’s how this community should work.

Jetpack and WordPress SEO is a post by on Yoast - Tweaking Websites. A good WordPress blog needs good hosting, you don't want your blog to be slow, or, even worse, down, do you? Check out my thoughts on WordPress hosting!

WordPress vs. SEO – Getting It Right!

I know that I sound just like the rest of the internet right now, but I’m going to say this anyway: SEO is vitally important for your WordPress site’s existence. No matter if you’re a blogger, an online business owner, or the person in charge of a corporate WordPress site.

Even despite all the recent algorithm updates like the Penguin and other ridiculously sounding animal names, SEO is still your best call for attracting new visitors and building your site’s popularity.

WordPress gives us quite a lot of unique optimization features, especially if we add a couple of plugins to the mix. We can set the permalink structure, create sitemaps, tune the indexation settings, and so on.

But no matter what exact actions we take, we need to keep the big picture in mind, and make sure that we’re not doing something just for the sake of it. To find out what I’m on about feel free to check out my guest post at ProBlogger:

Essential SEO Settings for Every New WordPress Blog

I have one more question. What’s your opinion on the Penguin update and the carnage it has caused in the blogosphere, and on the internet in general?

Related Posts:

WordPress vs. SEO – Getting It Right! |

7 Reasons Why Your Website Needs SEO

SEO is like the must-do thing among experienced webmasters and website (online business) owners. However, beginners are sometimes not that convinced as to the general idea of SEO and benefits it can bring to any given site.

SEO seems like a difficult and mysterious thing to do. Well, let’s face it … you basically do some strange optimizations to your site, build some links all over the internet, and then your site mysteriously pops up to the top rankings in Google, right?


First of all, not exactly like that. Secondly, SEO can bring a lot more than just some recognition for being #1.

So here’s my list of 7 reasons why your site absolutely needs SEO.

(By the way, don’t forget to visit my SEO glossary.)

1. Rank, traffic, branding

Let’s start with the obvious stuff. The main reason for doing SEO is to get to top rankings in Google. Once you’re there (if it’s for the right keywords) you can hope for new streams of visitors coming to your site every day.

Now the traffic is just raw numbers. There’s no telling if it’s going to turn to be profitable for you or not. So it’s on you to find buyer keywords – ones that people actually use when they’re shopping.

In the end, in the proper scenario, where your keyword research was well thought through, SEO can give you a nice stream of visitors and quite possibly some sales along the way.

SEO is also great for branding. If you’re on the top spots in Google for your niche keywords then your online business should quickly get recognized by other business people and by random visitors as well. Having a good spot on Google is among the first steps to becoming authority in your niche.

2. Better content for readers

This isn’t a benefit website owners notice right away, but once you learn SEO, you also learn how to produce better content for your readers, as a byproduct.

Here’s why. SEO is all about creating content that’s focused around a single idea (defined by a keyword). When you write with SEO in mind, you know that you need to mention the keyword a couple of times, which means that you need to remain on topic throughout the entire article.

This is simply something your readers will notice and appreciate.

However, be careful not to overdo this. Stuffing your articles with keywords is not the point here.

3. Better skill at writing focused content

This somewhat connects to the previous reason on this list, but it’s not entirely the same thing. The point here is to learn along the way, and to be able to produce quality content quicker.

Chances are that you will find it quite difficult to write something both SEO-optimized and reader-friendly on your first time around. But with time, you will develop this skill and you’ll be able to write a great piece with much less effort.

This will also allow you to write more content every day, which will improve your skills and SEO even further … and so on and so forth.

4. Better structured website

One of the main on-page factors of SEO is the inner structure of your site. In order to get a good score on this level you simply need to have a quality website management platform running in the background.

The difference between a quality, well-structured site, and a standard, low-quality implementation is the same as with a new car and an old beat-down car. You can get to the supermarket in both, but the experience is not quite the same.

What also matters is how fast your site loads. The lower your loading times are, the better rank you’ll have (and the more user-friendly your site will be).

Thankfully, this whole thing can be easily achieved for free – just use WordPress and get plugins like W3 Total Cache and WordPress SEO.

5. Targeted lead generation and customer acquisition

The fact that you’re doing some dedicated SEO work focusing on some specific keywords is not just for the heck of it. Your keywords are specific (niche) and so is your audience.

If you manage to attract a highly targeted group of visitors then it will be easier to monetize such traffic through various offers and products.

General audiences are always less responsive to all marketing messages. The more niche your audience is, the better results you’ll have. Both in terms of lead generation and actually selling stuff.

6. More business opportunities

This connects with the previous point tightly. Apart from targeted audiences, your site will also attract targeted opportunities on other levels, like partnerships, possible joint ventures or advertising opportunities.

Your prospective business partners are well aware of your niche audience, and this is a group they want to market to as well.

Depending on whether your niche consists of primarily buyers or not, you might be able to close some nice deals this way.

7. It won’t stop working overnight

The best thing about SEO is that it won’t simply stop working just like that, overnight. I know that there’s a lot of discussion going on right now about Pandas and Penguins and other animal-algorithm-updates. But the fact is that you shouldn’t be afraid of getting hit with a penalty or anything as long as you’re not doing anything shady.

Mainly because you can’t predict what the next update is going to be about, so you can’t take any effective precautions. Secondly, even if you do get hit, you will be able to recover quickly if you follow Google’s guidelines.

The overall predictability of SEO is probably its biggest advantage. You can estimate pretty accurately what your next month’s results are going to be based on this month’s results. And by results I mean both traffic and profits for your online business.

That’s it for my list, and the main message is as simple as this: Do SEO, it works!

Now, what’s your approach at SEO? Is it a part of your daily work?

Related Posts:

7 Reasons Why Your Website Needs SEO |