WHMCS SEO: Ways to Improve your Site Ranking in 2020

WHMCS SEO: Ways to Improve your Site Ranking in 2020

Back   Posted on 18 may 2020 / Updated on 26 may 2020
Reading time 16 minutes

Myths and Facts about SEO in WHMCS

First things first, we need to focus on facts and debunk some myths about SEO that unfortunately are still very popular in WHMCS community. Here we are dealing with one of the most common mistakes to avoid in WHMCS.

There are plenty of modules out there that promise improvements on search engines with so-called "SEO enhancements" that in reality provide poor results or rely on technologies no longer in use since 2009. In some cases they even do more harm than good.

Furthermore, WHMCS is poorly designed for an SEO perspective. It doesn't follow basic rules of visibility of a website to the point that it even prevents indexing and cause duplicate content which is bad.

This guide will focus fundamentals of Search Engine Optimization that is all about improving a site's rankings in the organic (non-paid) traffic for a specific SERP (web pages served to users when they search for something online). It will also put the spotlight on flaws in WHMCS environment otherwise the impact of any SEO tactic would be insignificant.

Before we start, you might be interested in our beginners guide to WHMCS and free collection of WHMCS action hooks.

Content

Years ago I would have said that content is king in SEO but things have changed over the past decade.

An amazing content about a topic, no longer grants high ranking on search engines. Writing quality content takes a significant amount of time, effort, expertise and skill but that's not enough if you don't work on SEO.

We'll share with you some content writing tips. It may sound obvious, but keep in mind that you're not writing for algorithms but for people. We're saying that because too often sites just pump out poor contents for no real reason.

1. Strategy

You don't just sit down and start writing.

First you should ask yourself where you want to establish as an authority and then make a list of contents that address the needs of your audience.

In the same time note down all related keywords you'll need to include in your articles but stay focused on the writing and not on keyword stuffing. This will drive more traffic and naturally attract backlinks.

2. Length

Figures suggest that search engines are more willing to rank higher pages with a minimum of 1500 words. To put things into perspective, it is approximately equivalent to 6 pages of an actual book. That doesn't mean you have to think it as a rule.

Use images and formatting to make everything look more visually appealing because no one likes to read a wall of text. When it is not possible, especially when your article is technical, at least try not to break the rhythm of your text with long paragraphs that tends to put readers off.

3. HTML Tags

Enrich your content with HTML tags like h1, strong, em.

When a search engine's crawler comes across your content, it looks at the HTML tags on the site to determine how to categorize the material. This opens up a whole new chapter that we will discuss in a dedicated article. Till then, we recommend you to:

  • Don't underestimate header tags that go from h1 to h6
  • Use alt attribute for images
  • Learn the importance of rel="nofollow" attribute
  • Understand the difference between b and strong, i and em

Page Title

Titles are the second most important factor for SEO after page content. Writing effective titles could be hard if you don't know what works and what doesn't. In this field details that can make a significant difference.

Titles are important also for Open Graph Protocol that is widely used on social media (Facebook, Twitter, LinkedIn...) and for Structured Data.

This chapter is very extensive because titles are relatively easy to write but in the same time have an high impact on SEO. Before we start, let us remind you that unfortunately WHMCS doesn't allow to get relevant benefits from titles but we'll discuss it leater.

1. Length

Some characters take up more space than others. For example "W" is wider than "i". If the width of the title exceed a certain number of pixels, search engines may cut it. This could end up omitting important words from your title. To avoid this problem, just stick to the following rules:

  • Keep the title less than 60 characters
  • Avoid ALL CAPS titles
  • Don't capitalize the first letter of common words

2. Prioritize important Keywords

The best place to hide a dead body is page 2 of Google. We're all a little lazy and unwilling to scroll too far down. This also applies to titles. Imagine how many potential customers look for "cheap hosting" on Google everyday and look at the following examples.

Search terms "cheap hosting"
Cheap Web Hosting | 99% Uptime with SSD & Backup
99% Uptime with SSD & Backup | Cheap Web Hosting
Reliable Unlimited Disk Space Cheap Hosting Fast Connection

At first glance a visitor is more inclined to click the first link because search terms are at the beginning of the title. That said, as a general rule you should always put important keywords closer to the beginning of your title.

Inflating your click-through rate percentage slightly can make a significant difference in the number of sales. Now before you start placing keywords in your titles, understand that keyword stuffing can kill your SEO.

Keyword stuffing
Cheap Web Hosting | 99% Uptime with SSD & Backup Italy
Cheap Web Hosting | 99% Uptime with SSD & Backup Germany
Cheap Web Hosting | 99% Uptime with SSD & Backup New York
Best Hosting Cheapest 1000/Mbps Unlimited Free Bitcoin

Such titles look very unnatural and can cause severe problems. Visitors are going to be annoyed when they come to your site and realize that you've tricked them to get them there.

As for search engines, they don't fall prey to these tricks and can detect when you're trying to cheat. The consequences range from penalties for your site to removal from search results.

3. Focus on people

Make an extra effort to write titles pleasing for your potential customers and not for yourself. For example as a provider you probably value SSD more than price but maybe visitors don't care of your storage technology. Maybe they're just looking for a cheap hosting and you want them to click on your links.

We're not saying that you can't describe your company, but you should approach the topic at a later stage. You can dig deeper into any these subjects on dedicated articles.

We suggest you to use services like Google Search Console to determine what search terms your audience uses the most and how your site performs in SERP.

4. Brand name

If you have a strong brand name, adding it to your titles could increase user click-rate however there are a few things to keep in mind while using your brand name.

Title tag has a limited number of characters available so use it wisely. For example it doesn't look good to add your brand name twice especially because search engines don't like repetition of same words.

For contents that are meant to be shared online (eg. blog posts), it's a different story. It is best not to use brand name since it could discourage people to share your content. Similarly on public forums your URL could be marked as spam.

On the other hand if your brand is not that strong, you could save that space for keywords.

5. Unique Titles

Search engines love variety of contents so bad that they penalize your site if the same title is used on multiple pages. We know it's hard but each page must have an unique unique and valuable title.

WHMCS doesn't help since it uses the same meaningless titles across multiple pages decreasing user click-rate. For example all pages of cart are named "Shopping Cart" and registration page is "Register".

None of your potential customers is looking for "Shopping Cart" on Google. Similarly no one looks for "Register". Turn it into something like "Start your website" followed by relevant keywords and use products groups and names for cart pages.

Meta Description

Meta descriptions can help your ranking on search results and many WHMCS modules implements them. Some are popular and inexpensive but we have to address some misconceptions.

First off it's a bit hilarious that there are modules to write descriptions since they can be implemented in any WHMCS in approximately 2 minutes with a single line of HTML and a Smarty variable. That's not even a script.

Secondly these modules claim to improve your rankings but meta description is not a ranking factor. It's just a brief summary of a page that shows up in search results.

You need months of A/B testing to write a description that can influence user click-rate. The problem here is that many people think that meta tags automatically grant a medal from Google. That's not how SEO works.

Lastly, the truth is that meta descriptions would be of no help because of how WHMCS is designed from an SEO perspective. Structural changes are required before you can get something from it. We'll talk about it later, but now let's focus on how to write effective descriptions.

1. Length

The optimal length for a description is 160 characters but search engines could show longer descriptions depending on the situation. For example Google shows longer descriptions when search terms are specific so it's recommended to keep them long enough up to 320 characters but never go lower than 160.

2. Content

Unlike titles, descriptions are not a ranking factor and search engines don't use them to rank your site. They're written for people therefore they should sound compelling and natural.

There's no need use keywords here since they're been already used for titles few pixels above. Just focus on writing high click rate and low bounce rate descriptions.

3. Unique descriptions

Similarly to page titles, you should avoid having duplicate meta descriptions especially on product pages and on pages that have really important return of investment.

It is worth to say that Google will sometimes change the description by taking few lines of content on your page but it doesn't mean you don't need to write them.

Meta Keywords

It's unbelievable that we are still talking about keywords meta tag as a tactic to improve indexing on search engines. This is something that has been deprecated by Google and any other engine years ago but for whatever reason WHMCS community this is still advertised as a "SEO enhancement".

There are no keywords in this world capable of ranking your site higher than your competitor. Anyone can claim keywords like "best hosting", "cheapest hosting". In a short time it became a tag were people were just stuffing out of context keywords to obtain unethical advantages.

Nowadays SEO is not a "spam competition". Search engines have stopped to consider meta keywords tags more than a decade ago. You can still use keywords but they don't have any effect in search rankings. Ironically even if they give no advantages, they can still be a cause for a penalty so get rid of them.

Open Graph Protocol

Also known as OG and Open Graph Tags, this meta tag has been conceived specifically for social media. Have you ever noticed that sometimes a link on Facebook automatically pulls a title, image and description?

Facebook LinkedIn

The purpose of OG Tags is to improve the shareability of your content on social media. Just the fact that your content has an image, you can double your social engagement - images are more successful at driving clicks. OG Tags also helps you saving time because all you need to do is copy and paste a link to automatically pull information.

Now imagine the benefits when people share your content online. OG Tags in fact work also when your link is shared on social media by fans driving more traffic to your site.

Guess what? WHMCS doesn't support Open Graph Protocol, description and featured images but don't despire. At the end of this guide all solutions will be provided.

Structured Data JSON-LD

JSON-LD, also referred to as Structured Data and Schema Markup, is a technology that enables search engines to better understand the content of a website which could lead to better ranking. Simply put, it allows them to display content in brand new ways.

FAQ How To

Google calls them "Snippets". If you manage to get your content displayed here, your site will attact the vast majority of users. In fact it is known that people are more willing to interact with snippets. They're basically free advertising space.

The bad news is that (you know that is coming) WHMCS doesn't support structured data and it can't be implemented since, similarly to Open Graph Protocol, WHMCS doesn't meet the requirements.

SEO-Friendly URL

Something that has always bugged me about WHMCS community is the cult of SEO-Friendly URL.

Yes, an URL that includes keywords instead of meaningless parameters and IDs can improve you site's search visibility. While it's worth implementing them, URLs are a minor ranking factor.

No matter how hard I tried to explain it over the years in WHMCS forum. People wanted friendly URLs like they were made of pure gold so one day WHMCS decided to please them.

When WHMCS introduced friendly URLs, everyone except us was happy. That's because most people were focusing on what they can see but very few noticed greater invisible flaws to the eye. Let's see the before/after comparison taking Announcements as example.

What's better?
announcements.php?id=4
announcements/4/christmas-promo.html

We can agree all agree on the fact that the second link is an improvement but you should see the whole picture. SEO is not all about URL rewrites and a rewritten URL doesn't grant better rankings.

On the contrary in WHMCS such "nicely made" URLs have been implemented in a way that could result in a penalty on search resuts due to duplicate content.

Duplicate Content

Duplicated content is content that appears on the internet in more than one URL. It can negatively affect your rankings and even lead to a penatly. In this respect, WHMCS is a duplicate content generator. Let us show you a quick example with an announcement.

Type URL
Standard URL announcements.php?id=4
SEO-Friendly URL announcements/4/christmas-promo.html
Made-up URLs

Further URLs can be invented on the fly. The article always opens:

  • announcements/4/summer-promo.html
  • announcements/4/hi-all.html
  • announcements/4/aaa.html
  • announcements/4/bbb.html
Black-Hat URLs

An evil competitor could exploit this flaw to rank your site as "trash" by spamming on the internet URLs like these ones:

  • announcements/4/worst-hosting-ever.html
  • announcements/4/scam-website.html
  • announcements/4/viagra-pills.html
  • announcements/4/malware.html

Basically WHMCS compromises your rankings without even knowing it. Every announcement can be reached from an unlimited number of URLs meaning that duplicate content is everywhere on your site and search engines will notice it for sure presenting penalties.

Keep in mind that this defect is not limited to Announcements but applies also to standard URLs.

To avoid exposure to this problem, you have to prevent people from using made-up URLs. Let us show you how it should work taking as example an article of our documentation.

Type URL
Original URL /docs/billing-extension/47/archiving-invoice-pdf-on-ftp
Made-up URLs

Any attempt to open the article from made-up URLs, results in a permanent redirect to original link. Click on links to try:

When someone tries to exploit categories, he'll be redirected to the root of documentation like follows /docs/aaa/47/summer-promo.

That's how friendly URLs should be implemented. You can't just focus on having a nice URL while you're killing your SEO with duplicate content.

Canonical URL

As we previoulsy said, duplicate content is bad but sometimes you legitimately need to place a parameter in the URL for pagination, to apply filters and stuff like that. Let's see some examples.

Duplicated content
news.php?order_by=date
news.php?search=client-email-preferences
news.php?sort=asc
news.php?SoRt=AsC
news.php?SORT=ASC

All the above URLs would be considered duplicate content (yes, URLs are canse sensitive) but there's a way to move forward.

The key is to explain to search engines what is the canonical URL of this page (news.php) but considering that WHMCS is a duplicate content generator, you can't do it without a little help.

Multi-Language

It's nice that visitors on WHMCS can change language on the fly but this system has a big flaw. It's based on PHP session. Search engines don't use sessions when crawling pages meaning that WHMCS will always be indexed in default language.

You have probably invested much time and energy in translations, multilingual titles and descriptions but no matter how hard you try, you will be indexed in one language only.

To index multilingual versions of your site you have to use different URLs for each language version of a page. Let us take our site as example that is entirely based on WHMCS. Below you can see how we deliver multilangual versions of pages.

Page Multilingual URL
WHMCS Modules https://katamaze.com/whmcs
https://katamaze.it/whmcs
Billing Extension https://katamaze.com/whmcs/billing-extension/specifications
https://katamaze.it/whmcs/billing-extension/specifications
About us https://katamaze.com/about-us
https://katamaze.it/about-us
Documentation https://katamaze.com/docs/general/3/sortables
https://katamaze.it/docs/generale/3/sortables

Basically we are using two domains (katamaze.com for english and katamaze.it for italian) but we could have used also an alias like it.example.com. As a result, we have different URLs for different languages that search engines can find and crawl.

This also gives us the opportunity to specify site's target locale. On Google Search Console and Bing Webmaster Tools we target Italian audience on katamaze.it while katamaze.com is used for the rest of the world.

Sadly WHMCS doesn't follow this rule sticking to PHP session meaning that writing titles and meta descriptions in multiple languages is a waste of time.

Sitemap

As the name suggests, a sitemap is an XML file that contains a list of all the pages on your website. It is used to tell search engines where is your content and how to reach it assisting crawlers in faster indexation. The sitemap also tells them where are new pages, what pages have been updated and their language.

Don't be tricked to think that sitemap affect the actual ranking of your site. It's just an aid that gives more information about your site to search engines.

Without a sitemap you're just waiting for search engines to find your pages hoping that they do it in a reasonable amount of time. Unfortunately this is what you are subjected to with WHMCS. Not only it has no sitemap but its structure doesn't allow to create one that makes sense.

Before you can get there, WHMCS needs to be deeply improved to prevent duplicate content and allow the indexing of multilingual versions of pages.

Mercury for WHMCS

Considering how bad WHMCS is designed from a SEO perspective, do you still think that all you need to improve your ranking is turning on SEO-Friendly URLs and write a bunch of meta descriptions? It isn't going to work. It took us more than that to get subsantial improvements.

The good news is that what we've learned along the way is part of Mercury, a module you can purchase to take your WHMCS site to the next level. It has everything we just mentioned:

And much more:

Mercury includes also our technologies:

You can use Mercury to replace any CMS with WHMCS. If you want to learn more about it, please read Integrating WHMCS with WordPress, Joomla and Drupal.