SEO Best Practices for Inbound Marketing with Sitecore
The first step of Inbound Marketing Methodology is to attract people to the website or to content they are looking for. How are people going to try to find content that they are looking for? If I ask this question to someone today, most people will say , ‘I will google it’.
Here is some data from my own blog. For the month of September 2016, there were 1024 visits to my blog site. Out of those 1024 visits, 645 came from Search Engines, that is 63% of the total visits. It’s also noticeable that most people searched in Google; so if I keep our SEO best practices discussion around Google, we should be able to cover most important topics.
Not to brag about my blog but, this gives us some idea about how important it is to use SEO properly. Currently search engines reach 67% of the US population and 98% of the US browsing population. Any website with good attention to SEO will show advantages as far as Inbound Marketing is concerned.
In this blog article, I will discuss implementation of SEO for websites built on Sitecore. There will be lots of discussion about SEO best practices. Sitecore will be discussed at the end. I will discuss the Sitecore information architecture and Sitecore tools that can help us to apply the SEO best practices in a Sitecore implementation project.
We should keep in mind that, Google is always changing the search engine algorithms, something relevant today, may not be entirely relevant tomorrow. My focus in this article is to provide the information that will help someone to understand SEO in the context of Inbound Marketing and how to implement those SEO best practices in Sitecore.
What happens when we search in Google? Google algorithms search through the indexed documents and try to find the best possible match for the search criteria. How does it work? Here is a short video, by Matt Cutts, on how Google search works.
In addition to finding the best content, Google also tries to present the search data in many interesting ways to intrigue users. As much as it is important to understand how search works, it also important to understand how Google present search results. Each search result Google shows is called a snippet. Understanding snippets will help us to understand where Google finds the snippet information and hence we will be using that to intrigue our buyer personas to attract them to our website. Here is another video, by Matt Cutts, where he explains result snippets:
The video is a little old but it is still relevant. Since the creation of this video, Google has added many more interesting features to its search presentation. For best SEO results for Inbound Marketing, there are two things that are most important, 1) achieving a high search ranking and 2) achieving a high click through rate by proper use of Google’s presentation features.
Domain Name Selection
A good strategy for SEO starts from very beginning of the project. What is the domain name of the site going to be? It is important to put some thought on that, because domain trust is important for SEO. When it comes to choosing a domain name, consider the following:
- The domain can be based on a brand name or based on a keyword. Google values the brand name. Having the EMD (Exact Match Domain) in the domain name doesn’t affect the ranking in Google but it might help with other search engines. From the SEO perspective it is best to establish a brand name for the long run. In the Sitecore world most of the time the implementations are for some sort of business and having a brand name makes sense.
- What about domain extensions? Google doesn’t give any preference to any domain name extensions but Bing does. In Bing ".com" gets the preference. The .com extension is most popular and most desirable to searchers. Getting a .com may help a bit more than other domain name extensions.
- Keep your domain name length to less than 15 characters. Shorter domain names are easy to remember, easy to share and less chance for typos.
- Avoid using too many hyphens in the domain name. Sometime using a hyphen helps if you are using a keyword driven domain name, but in general avoiding a hyphen in the domain name is a good practice.
- If you are looking to register a domain name and you find that domain name is already registered, it might be beneficial if you can acquire that domain name. Old domain names might get a better search ranking because of the trust it already built with the search engine. You can check the trust of the domain using Majestic SEO and power of the domain by using Moz’s Open Site Explorer site rating. I will discuss these two tools in a later section. Also, it doesn’t make sense to acquire a domain name which is not close to your brand. Some sites you can use to check for the old domain names are SEDO, GoDaddy Auction, AfterNic, DomainTools.
- There are some good domain name generator tools out there which you can use to help you with deciding a domain name. Check out , .
Content writing for effective SEO
It’s a cliche but I will say it, Content is the King. It is a misconception that content is the only thing that Google considers for the ranking. Google aims to find out how trustworthy the content is and in order to do that it needs to also look at the engagement. We will talk more about this later. But the quality of the content is really important. How do we create quality content?
- The most Important thing to remember about optimizing content for search engines is that you are creating your content for the readers and it should be optimized for them. If you focus too much on the good search ranking of your content, you may fail to deliver the message effectively to the target consumer of your content. That being said, you want your readers or Buyer Personas to find your content and for that you need to think about how the Buyer Personas will search for the content. What keywords will they use? We will discuss how to choose good keywords in the next section.
- When it comes to the quality of content, Google doesn’t look at only one page of the website. Google looks at the whole domain to determine the authority and reputation of the website. What determines Authoritative Content for the search engine? Trust. Content is more authoritative when it is cited with trusted sources, linked by trusted sources, published in trusted sources, written or reviewed by a trusted author. Google determines the Reputation of content by measuring the user engagement with the content. Some of the criteria Google looks at is, bounce rate (how much time user is spending on the content), social sharing metrics, website performance, and user’s trust on the website. Using Magestic SEO, we can measure the Trust Flow and Citation Flow of a website. So before using link to a source website or approach someone to link to your content, the trust can be measured using Magestic SEO. Here is an example of Trust and Citation flow for .
- Use clear, descriptive, and concise anchor text so that the user and Google understand what page the link is navigating to. Make sure the anchor text can be differentiated from regular text so that users don’t miss it or accidentally click on it. Use anchor text for linking internal pages too so users and Google can navigate to different parts of the site naturally. Do not go overboard with internal linking. Only relevant internal links should be placed.
- As I mentioned before, Google checks the bounce rates to determine engagement with the content. It is important to write content that can be read easily. Use short sentences. Try to keep it to less than 15 to 20 words. Keep the paragraphs short. Use a structured layout for the content. Discuss different topics in different sections of the content.
There is a myth that keyword research for SEO is useless. It was proven by many case studies that finding good keywords helps with the search ranking. Google will eventually crawl the content but with so much content out there, choice of right keyword will help stay ahead of the competition.
- Keywords or phrases are search terms that users search to find information they are looking for. Predicting the search term or the keywords that will be entered by visitors is extremely important for the search ranking of your web pages or blog posts. Start with a list of 10 keywords for your content and use a Keyword research tool like SERPs Keyword Research Database to see the competition for the keywords in google. You can use rank checker SERPs Keyword Rank Checker to see how the websites are ranking based on the keyword you have used.
- Instead of using short keywords, use long tailed keywords which will have more probability to give you better ranking because short keywords will be there in a lot of other sites. For example, instead of ‘Carbonator Motor’, use something like ‘Carbonator Motor for Soda’ if you are writing about that kind of motor.
- When it comes to choose keywords for a content, first choose an appropriate Primary Keyword then select some supportive keywords. You need supportive keywords for placements in the page. You may want to put the primary keyword in the content and the supportive keywords in the Title of the page and in the URL. Supportive keywords helps to avoid over optimizing content. Google Adsense is a great tool for finding supportive keywords.
- There is no need to add keywords in the Meta Keyword tag. Google doesn’t use Meta Keyword at all for ranking.
- Bolding words using "strong" or "b" elements does not help with search ranking. It helps users read the article, if you want to emphasize certain words in your content. That way it helps with engagement. The same is true for "h1" and other heading tags.
- Keyword density in content is something you should be aware of. Using keywords too many times in the content can cause over optimization and that can hurt the search ranking. The recommended number of keywords in the page should be between 3 and 7.
Search Engine’s ultimate goal is to provide content that people would like to see. How does the search engine know if people would like specific content? The answer is, by monitoring the conversation. It’s like real life. When we like a book, we talk about it with our friends and spread the word. Similarly when content reaches more people, via different channels like, blogs, social media, email etc., it indicates more people liking it and more conversation. Quality content is not the only thing that matters for search ranking. How people are engaging with the content and how the content is getting distributed is something that search engine looks at today.
If the content is good and it becomes popular, more people will link to the content. Google search ranking consider this as a factor for search ranking. The dark side of ranking based on links from other sites is that people try to game the system. Tell a bunch of people to write some content and link to their site with the sole purpose to trick the Google search algorithm. Google doesn’t like it and there are many incidents where Google penalized websites for trying to trick the system. You will find some examples here .
Whether you are linking to some source content or someone is linking to your content, it is important that those links have a high trust value. A good place to check the trust of a link is to use Majestic SEO website as we discussed earlier.
Listing the site in the directories can improve the search ranking but you need to be careful about the quality of the directory service and you need to have the right strategy to implement this for your website. Here is a nice article about directory listing.
One thing to consider about link building is that the link building should naturally grow. It’s not natural that we write content today and hundreds of sites immediately start linking to that content. If that happens, Google will consider that as suspicious.
Guest Blogging can help with search ranking but, you need to be careful because guest blogging is only effective if it helps building the trust. First of all, the content written by a guest blogger should be relevant and quality content. You should use guest bloggers who have acquired some authoritative trust from Google. If you have a circle of quality bloggers writing on the common interest, it will help with engagement for the community, which helps adding popularity for the content. When it comes to distributing the content, it can be distributed through different medium like, infographics, ebook, audio, video, etc.
Since search ranking is influenced by the engagement towards the content. Distributing content through social media is important. Always use a social sharing icon in the article. Have social networking accounts for the business and make sure the sites are publicly viewable.
Search Result Presentation
Search result presentation is as important as search result ranking. It often happens that a user clicks on the third ranked search result because its snippet is showing some text that is relevant to the search.
What we add in the "title" tag of the page shows up as the title in the search result.
- Choose a title of the page that describes the content of the page accurately.
- Don’t use the exact target keyword in the title. Google will penalize websites that try to over optimize for search engines. We discussed the Primary Keyword and Supportive Keywords. It is preferable to use a Supportive Keyword for the title.
- Don’t use same title for multiple pages in the site. Search engines consider duplicate titles as malformed and penalize.
- Use short, descriptive titles. There is a fair chance that title will be truncated after 62 characters. Shorter titles have higher click through rates.
Meta Tag Description
Adding text in the meta tag description gives you a chance to show the user what you want to convey about the content. If the text is relevant to what the user is searching, there is a fair chance that Google will use that. If there is no meta tag description, Google will look at the content and construct the snippet. Google may also look at the open directory for the snippet text.
- You can tell google to not to look at open directory by using the tag meta name=”robots” content=”noodp, noydir”
- Accurately describe the page. Meta tag description runs about 155 characters. The user will look at this snippet and decide whether the actual content has the information they are looking for. It is very important to use the words wisely to attract the users to your content.
- Use unique descriptions for each page. If there is a huge number of pages it is better to automate the creation of meta tag description. For example, for an eCommerce site there can be thousands of products. In this case meta tag description of the product detail page can be built from the product description. This is true for the title too.
Structured Data Markup
The Structured Data Markup is an effort by the internet community to organize data in a standard structured way to present the data to online visitors. The Structured Data Markup schemas are available in. Every website has some sort of structure data. For example, if the website is a travel site, it can provide Structured Data Markup of the type of ‘Place’. If a website provides Structured Data, Google and other search engines might present that data in an interesting way along with the search result. For example, if I search for Norah Jones, along with the Norah Jones site link in the search result, Google will also show the event information to the right.
“name”: “5D Mark III”,
“description”: “Great SLR Camera”,
In a web page, Structured Data needs to be included in the header section within the script tag as shown in the above example. Structured Data does not help increase the search ranking but definitely helps with the click through rate. To find some examples of Structured Data in Google, you may search for some recipes and you will see the Structured Data about recipes presented with images, ratings etc. To see what Structured Data is included in the site, use Google’s Structured Data testing tool. Entering the website URL will show the Structured Data in an easy-to-read, presentable format. If the Structured Data is one of the qualifying content types, Google will show it in rich snippets. You can learn more about Structured Data here .
Other Important Topics
There are many other aspects of a website that will either help with the ranking or click through rate directly or indirectly. Let’s discuss them.
- Simple-to-understand URL helps the user and search engine to understand the URL and return an effective result. Google returns the URL as part of the search result snippet. If the URL is simple, it is easy for the user to remember and increases the probability that user will visit the same page again.
- Choose a URL with words relevant to the content. We talked about supporting keywords. Using a supporting keyword is a good idea.
- Create a simple directory structure. For example, all product detail pages should show the URL like, http://example.com/products/skunumber. Avoid deep directory structure and directory names that are not relevant to the content.
- Use one version of the URL in the site. If you have an old version of a URL that users are still using, use 301 (permanent redirect) or 302 redirect to redirect the old URL to the new URL. If you know that the old URL will never be used again use 301. If you feel that old URL can come back in the future use 302.
- If you have deleted a page completely and there is no alternative page for that, the URL will be broken and the web server will return 404, page not found. If you know the content is deleted forever, you should return 410, that will tell google that this content was deleted and Google will remove that from the index.
- Use lower case in URL. It is easy for users to remember.
Use Canonical link element when there is more than one version of the same content. The canonical link tells search engines which link to consider for ranking when even the visitor lands on a different version of the page. The canonical element is declared like: http://example.com/canonical-example/”>;.
Even when there is only one version of the page, we should use canonical element because the same page can be rendered when there different parameters included in the URL. Google also considers self referencing of a URL in the canonical link as the best practice. If there are duplicate pages in the site, instead of using canonical link, you should remove the page and use 301 redirect. You should be careful about the canonical link. If the canonical link is not a valid link the search ranking can be negatively affected severely.
- Navigation should be simple to understand for the user and have naturally flowing hierarchy.
- Use text navigation mostly and avoid image and animation links as much as possible.
- Create a simple html site map page for the user and an XML site map file for the search engines.
- Use a custom 404 page to provide a friendly message to the user in case the user comes across a link or page that doesn’t exist.
- Always use a descriptive alt text for images. This will help your image to be added in the google image search. If the image is used for linking, alt text will be used like anchor tag.
- Use distinct name for each image.
- Store images in one website folder rather than creating a multiple folder hierarchy to store images. In the case of Sitecore, images are stored in the media library. Make sure the media library path is simple.
- Use the right image type (jpg, png etc.) in the image file name.
- If there are numerous images in the website, include an image sitemap file. The format of the image similar to XML Sitemap file.
A Sitemap is an XML file that describes the structure of the site. Search engines can use it to find out pages/images/videos to crawl. There are some debates if the Sitemap file is needed for Google to find out the pages of the site. It is true that Google can find out and crawl pages even if the Sitemap file doesn’t exists but, Google highly recommends to have a Sitemap file for several good reasons.
- If the site is too large, it is possible that some of the pages will be overlooked because those pages are not linked from other places in the site.
- If the site is an online ecommerce site with huge number of products, it is quite obvious that Google will not find all the product URLs and will not index.
- If the site is new and it is not linked by an external site, Google wouldn’t find it.
- If there are archived pages in the site and if the pages are not naturally linked to each other, Google will overlook those pages.
- Other than the location of pages, Sitemap also provides meta data information like, when the page was last updated, how often this page changes, what is the importance of the page compared to other pages etc. This information helps Google with crawling and indexing.
There is a limit for the Sitemap file size. A Sitemap file can be at most 50 MB uncompressed and have less than 50,000 URLs. After that you have to create multiple Sitemap files. There are two different ways you can let Google know about the Sitemap:
Submit it to Google using search console Sitemap tool or add the Sitemap file location in the like, ‘Sitemap: http://example.com/sitemap_location.xml’;.
The following is an example of a Sitemap that contains only one URL.
Block Content from Search Engines
Sometime you don’t want certain content to show up in the search result. Typically we want to exclude content that contains private information of customers or users. There are several ways to prevent content from the search crawler.
- If the site is designed with authentication, Google will not be able to get to the content. If authentication is not there, the best way to protect content is to password protect the folders.
- If it is not a matter of privacy, but we don’t want the search engine to not crawl certain areas of the application, we can use Google. . Typically, we don’t want search engines to crawl files like images, stylesheets, scripts etc. Doing this will save resources for both the website and for the search engine. Remember, excluding files using , will not protect files from showing up in the search result. Files can still be crawled, if the files are linked from other places, which were not added in . Learn more about from
- NoIndex and NoFollow – noindex is used in the robot meta tag, search engine will drop that link or page from the index. It is a weak way to prevent content because sometimes we may forget to add this and as a result the content will show up in the search result.
Setting NoFollow will tell Google not to crawl any link in that page. There are times we want to put a link on the site but don’t want to pass the reputation. For example, we are putting some website links which we know are are not from a quality site. In this case we would like search engines to not follow the link because it might hurt the reputation.
Here is how we should use nofollow and noindex for all the links in the page, meta name=”robots” content=”noindex, nofollow”. If you do not want to index a specific link in the page you can use NoFollow in the link element like below http://example.com/nofollow.html”; rel=”nofollow”>nofollow link
Does having SSL help in search ranking? It’s hard measure if it helps, but Google says so.
There are definitely some advantages besides the search ranking.
- Having https in the site provides a sense of security to visitors and it
protects visitors’ communication with the site and protects the site from the ‘man in the middle’ attack.
- Without https, when users come to your site from a https site, you will not see the referring site and that is an analytical disadvantage.
- When you move to https, we should update links in sitemaps, register the https link in Google webmaster tools and make sure to use 301 redirect to redirect http links to https links.
- It is preferable to use HTTP Strict Transport Security (HSTS). This will remove the requirement of 301 redirect and speed up the application performance.
Website performance and Uptime
The quality of the website suffers in the eyes of search engines if the website crashes or hangs. If pages are moved or deleted, use 301 redirect to appropriate page or use status code 410 to let Google know the page was deleted permanently.
Sitecore Information Architecture Consideration for SEO
One of the biggest challenges of SEO implementation is to constantly maintain and follow the SEO best practices for the site. A proper Sitecore information architecture can help with this significantly in regard to easing the implementation and enforcing the best practices.
To support and enforce SEO for any Sitecore project, I suggest creating an SEO template and include this SEO template as one of the parent templates of the page template. The SEO template can contain the following fields:
- The Title contains the title of the page that gets placed between
element of the page and shows up in the Google snippets title. You should consider to use a supportive keyword for Title to prevent the page from over optimization.
- Meta description is the field where you want to add the summary of the content. This will be displayed in the Google snippet summary, if Google finds it suitable.
- URL field is to add the keywords you want to see in the page URL. By default Sitecore Link Manager generates the URL from the item name. But, as we discussed before, it is a good idea to use a supportive keyword for the URL to properly optimize the page. It also gives an opportunity to the content editor to change the URL after the items are created. To use this URL field to generate URL of pages, you need to create a custom link Provider. One word of caution about using this separate URL field is that you should not change the URL field frequently because once the site goes live, the URL will be indexed by the search engine and people will start using it. If you change the URL, the old link will be broken. In case you need to change the URL, you should use 301 redirect for the old URL.
- I discussed before about the Structured Data Markup and how it helps presenting the result in Google search. If the website is presenting content that qualifies the Structured Data Markup types, it is highly recommended to use Structured Data in the SEO items and generate the JSON-LD script to add in the page head section.
SEO Field Validation
Sitecore allows you to apply validation to the fields of a template through field validation rules. There are many validations available in the base product as shown below. You can also create custom validation rules.
You can select validation rules for the SEO fields to enforce good SEO practices. Here, I selected the required and Max Length 40 for the Title field.
When I create an Item that doesn’t satisfy the validation rule, Sitecore will show the indicator and message that the item has some validation failure. Like below it is showing on the Quick Bar on the left and next to the item field.
Validation rules can also be run from the Review panel in the content editor.
You can create some custom validation rules like, the Title field and URL field cannot contain the same text. This will ensure SEO optimization rules.
Image Optimization for SEO
In Sitecore the images are saved in Media Library. When images are accessing a web page Sitecore will render images using ASHX handler. In the Media Library item for an image there several fields you can enter values. One of them is Alt in the Image section for Alt Text. This field has validation and shows a red line when no text is entered. Below is an example.
The Sitemap generator mentioned below can be extended to generate Sitemap XML for all images used in the website.
Sitecore Experience Accelerator (SXA)
Sitecore Experience Accelerator (SXA) is newly added module in the latest version of Sitecore. SXA has some neat features to improve SEO. You can enter the title and meta description for page items. It does have a field for meta keywords, which has no effect on search ranking. The nicest feature in SXA is, you can enter the Sitemap data in the page item and generate the Sitemap file for the website. Learn more about how to Improve page SEO in SXA.
Sitecore Tools for SEO
There are a bunch of tools available in the Sitecore Marketplace that can be useful for SEO implementation.
301 Redirect Module
There two 301 redirect modules available in Sitecore Marketplace. These modules provide varieties of feature for 301 redirect.
Checkout the following Sitemap generator modules.
Sitecore SEO Toolkit
Sitecore has a free SEO toolkit that can be useful to evaluate SEO related problems in the page content. The SEO toolkit can be integrated with third party APIs for keyword suggestion and content analysis functionality. This tool was not updated recently as per the newer version of Sitecore. You might face some issues if you are using Sitecore version 8.0 or up.
In this article I tried to cover most of the important best practices of SEO. Hopefully, this will help marketers and developers to understand SEO in the context of Inbound Marketing and how to use Sitecore efficiently to achieve the SEO goals. As a platform Sitecore is very flexible and extensible. There are opportunities of creating many more tools to help with SEO implementation for Sitecore projects. I have plans to create some tools and I am looking forward to see more effort from the community.