I’m in the process of merging and updating old posts with fresh insights and content. I dropped the AI part because what it really means is automation in this sense. Building blog traffic is always about writing great content and observing what Google’s AI does to get you to the top of the search results
AI is just an algorithm that’s built on top of the existing data you have. In a sense you fit an algorithm, to the data instead of fitting the data to the algorithm.
What that means for SEO and your blog traffic is this. You write content and Google and other search engines index it. Based on your blog’s metadata and content it will spit out a ranking in the Search Engine Results Page (SERP). If people find your content valuable and visit/link to it, Google then adjusts your ranking accordingly. So it’s a continous learning feedback loop. Posting valuable content that’s shared and linked is what gets you to the top of the results page.
This, of course, has a lots of great benefits. If you’re running a blog to make money or a business, then this can generate lots of revenue for you. It could make you famous or change your life (which it did mine), but maintaining a blog is hard work. Google periodically changes it’s algorithm to thwart spammers, spammers, and blackhat SEO’ers from cluttering up the SERP with junk.
No Black Hat SEO
This goes without saying but don’t take the easy way out by buying backlinks or fake traffic, Google will find out one day and you’re site will drop in the rankings. So don’t think of trying any Black Hat SEO tricks. There are tons of places that offer 200 backlinks for $5 or 10,000 unique visitors for $25. They’re really shady and if it’s too good to be true, don’t do it. If Google penalizes you it will take a lot of time and effort to get out of the penalty box.
Write Great Content
It all comes down to this, writing great content. If you want a serious blog that attracts loyal readers and has ‘staying’ power, you have to write detailed and informative content. This is sometimes called evergreen content, meaning that it’s still applicable today even if you wrote it 10 years ago. Your posts need to be over 300 words minimum because anything less will be penalized by Google as just a non serious blog, at least that’s been my experience. The norm for high ranking posts on a given topic is somewhere between 2,000 and 5,000 words per post. Once you cross 5,000 you’re in the mini novel area and only a very few bloggers get to 10,000 words. Those that do consistently rank on the first page of Google.
Imagine writing 10,000 words?
Use Google Analytics
You can use Google Analytics or some other script to monitor your site’s traffic. From that you can gather a lot of clues on how people use your site. For example I found that:
Tuesday’s are my busiest days.
My most popular topics are RapidMiner and Python tutorials
My SEO traffic started dropping in January 2020 hitting a low point in April 2020. Now it’s trending back to December 2019 levels
The moral of this story is, you can’t manage anything if you don’t measure it. Measuring is the first way for you to take a hard data approach to fixing what’s wrong and build your traffic back up again.
Use Google Adwords
I extract great ranking keyword information from a Google Adwords data dump that I put into an Excel Pivot Chart report. There’s no AI magic behind this and you could do this quite easily yourself. Building this report is a great way to see keyword trends in Google and if your posts and content ‘align’ with it and your readership.
You can edit your content to switch out some words here and there without diluting your content. For example if you run a travel blog and the word ‘vacation’ has more meaning than ‘trip,’ you should use that word instead of ‘trip’ in your content.
Over time you’ll see things happening on your site you can start asking questions like, “what type of content drives the most traffic and on what days?” Building an Excel Pivot Table report won’t be able to answer that question but it can answer the question, “what’s my busiest day”, or “what’s my optimal post per day quantity”, and “what’s my most popular category.”
Excel Pivot Table
Gather Data. If you use Google Adwords, or another site statistic monitor, download your visitor data. You can choose what ever time frame you like, a good rule of thumb is about 2 months worth of data. You’ll need to get the number of hits and the date of the hits. Next, add this information to an Excel spreadsheet and add the following columns: Weekday, Number of Posts, and Category.
Transform the Data
Go back between the dates of your data download and fill in the columns for Weekday, make sure to match the date with the right weekday. Next, fill in the Number of Posts column with, you guessed it, the number of posts you did that day.
Create a Category. When you get to the step of data mining your traffic, you’ll want to know what content drives your traffic and on what days. Adding a key of categories will help you accomplish that. I entered the number “1” if the post that day was about Forex, “2” if it was for stocks, etc. You get the point. If you posted more than one post on any given day and it was about more than one topic, you can add a second or third category column. You get as detailed as you want, its really up to you.
Build the Excel Pivot Table. Once you have all your information, you can build the table. Go to Data > Pivot Table and follow the instructions. You can place the table in your existing worksheet or a new one (I usually go for a new worksheet). Select your data range to include the Weekday, # of Visitors, Posts Per Day, and Category.
Once you did that you’ll see your new worksheet with a little floating menu system. You can drag and drop the fields into your new table. Drag the # of Visitors into the Drop Data Items area, drag the Weekday field into the Drop Column Fields area, drag Posts per Day to the Drop Row Fields area, and lastly drag the Category field to the Drop Page Fields area.
Format the Table. Use Excel’s auto format function in the Pivot Table wizard to select the style of table you’d like to see. When your all done, your spreadsheet should look something like this below. Click on the image to download the actual Excel spreadsheet.
There are a lot of free SEO tools out there that you can use too to do some analysis of your website. The best one is called Small SEO Tools. It’s not an integrated site like Moz or some other SEO checkup platform, but it can get the job done.
Tweak your Robots.txt file
As an effort to help search engines index my site better, I installed a robots.txt file. The reason why I did this will become clear in a minute. When you run a blog, search engines will parse your site and index it with a lot of duplicate data and posts. Duplicate data and posts can have a negative effect whereas the spider might think that your blog is a spam blog (splog). In the long run this can cause lower rankings.
Why the spiders think that way is pretty logically, at least how I think they work! If you write a blog post, and its current, it will be on your main index page (1 copy). At least two more copies will reside in your category and archive sections. Essentially you’ll have three copies of the same post if the spider parses your site that day!
As soon as your post drops off the front page it will end up in your category and archive sections; you’ll still have two copies of the same post! The best solution is to tell the spider NOT to index one of those sections! It’s that simple!
I found a version of an optimized Wordpress robots.txt file and discussion here. I then modified it to my needs and installed it in the root directory. So far it seems to be working but only time will tell how effective it will be. From what I’ve read, using a robots.txt file is a long running experiment and you have to tweak it over time to maximize its effectiveness.
Switching Your CMS HURTS YOU!
It’s no secret that I’ve switched CMS’s so many times that it makes my head and my reader’s heads spin. Take a look at my CMS tag and you’ll see my struggles with Wordpress, Expression Engine, Text Pattern, and Blot.
I made a big migration to Jekyll and loved the static type of CMS’s ever since. Fast forward to today and I’ve pretty much settled on Pelican. Why? It’s a static CMS and its python powered. It does a great job of streamlining the YAML front end of a post and it’s fast to regenerate. The best part? I use rsync to upload new posts to my server and I use the S3 upload to make a backup of my site on Amazon.
Yet, there’s ONE big problem that I’ve noticed. 100’s of my inbound links are all now dead and that messes with my SEO ranking.
The solution is to create RewriteRules in my .htaccess file and here’s some friendly tips on how to do it.
Moving away from Wordpress
The biggest inbound link killer on my Wordpress site was when I switched my permalink slug. I went from a classic format of ’/year/month/day/my-post’ to the simpler one ‘/my-post.’ Wordpress handles this change if you do it in Wordpress. If you migrate out of Wordpress, well all hell will break loose.
The simple fix is to add following regular expression to your .htaccess file:
RewriteRule /[0-9]+/[0-9]+/[0-9]+/(.*) /$1 [L,R=301]
What this does is select any
/year/month/day/my-post formated URL and returns
/my-post! Awesome, but what about those pesky
/_wp-content/uploads directory? There are tons of images I put into my blog posts and now all those inserts don’t work.
The solution for me was to download the /wp-content folder and rename the folder as
/_wp-content. I did this because I was using Blot.Im at the time and if I didn’t add the
_, it would generate 100’s of images as blog posts.
RewriteRule /wp-content/uploads/(.*) /_wp-content/uploads/$1 [L,R=301]
Of course, you don’t have to do this. You can move the /wp-content folder to its final destination and have all the links resolve.
Moving away from Expression Engine
Oh Expression Engine (EE) how I love and loathe thee. EE is a serious CMS. You can do a lot with it if you spend the time to architect it out. It’s powerful but complex. It’s too powerful for running a small blog like mine, but I liked it when I used it.
The thing with EE is that it creates /blog/entry/my-post permalinks. the /blog/ part is the name of the channel and it could be anything you like. It could be /radio/entry/my-post or /store/entry/my-post. For the extended time my blog ran EE, several inbound links went to /blog/entry/my-post.
To solve this problem I created the following rule:
RewriteRule /blog/entry/(.*) /$1 [L,R=301]
Now EE also had a URL for each category and that created havoc too. Wordpress uses this method too and since I use Pelican now, the categories have become tags, or rather ‘tag.’
The solution was this:
RewriteRule /category/(.*) /tag/$1.html [L,R=301]
Moving away from Blot.Im
Blot.Im is a favorite of mine. It’s simple to use and it’s making improvements with every update. Still, it’s not as feature rich enough for my taste. I’m sure one day it will be.
Blot uses ‘tagged’ instead of ‘tags’ and to solution to that is doing:
RewriteRule /tagged/(.*) /tag/$1.html [L,R=301]
This post is not done, I have way more to write about this topic because it’s always changing. If you liked this post update, please share it or drop me a comment on Twitter.
Want to leave a comment?
If you want to give me some feedback on this post, please contact me
via email or give me a Tweet ons Twitter