When properly configured, Drupal is a very SEO-friendly web framework. The trick is to know which Drupal SEO modules you need to install and how to optimally configure them. This session will go over the standard modules used for better search engine optimization in Drupal 7 and 8 including: SEO Checklist; Path & Pathauto; Page Title; Metatags. The Drupal SEO Checklist Here are some must have SEO modules in Drupal. For the overall framework. Real Time SEO for Drupal acts as a constant alarm clock to remind you of things that you might have missed. Since there are a number of technicalities involved in SEO, one might skip one or two if left unassisted.
- Wordpress Seo By Yoast
- Drupal Seo Tools
- Wordpress Seo Plug-ins
- Wordpress Seo Coalition
- Drupal Seo Checklist
- Wordpress Seo Services
- Free Seo Analysis
Not wanting to get on the bleeding edge of technology with Drupal 8? We don't blame you there are a lot of costs associated with pioneering a new version of a software. So we thought we would help Drupal 7 users dust off there existing installation and get it ready to rank in search results.
Our goal was to curate a list for the Drupal community and prospective Drupal users with some of the great SEO Drupal modules and segment them based on whether they are:
Quick vocabulary refresher for those evaluating Drupal:
- A Core module is a module that comes built in to every Drupal installation.
- Contributed modules do not come standard with your new Drupal site and these modules are created and maintained by the Drupal community.
- Custom modules also do not come standard in your Drupal site. These modules are different because they are used and maintained by one Drupal user or unique to a specific agency.
Our list features 4 Core SEO Modules, 11 Contributed SEO Modules, 1 Custom SEO Module and 1 Experimental SEO Module
Good SEO isn't just satisfying the search engines. Proper SEO is being considerate. Considering the Search Engines and Users who are both trying to understand what your website's content is about. As marketers its our job to focus on both of these key visitors and better indicate our relevance.
Here is a short round up of some of the modules that will help you have a more considerate Drupal site and a well tuned SEO machine.
Core Drupal SEO Modules
This is a key module for content publishing. Google and users love fresh insights from experts and your blog will be a crucial place where current or prospective clients find your thought pieces.
This is an important module and required in order to use the Google Analytics module which will come up later in our list.
Allows site owners to name or rename URL's.
Alerts other sites when your site has been updated.
Contributed Drupal SEO Modules
Below is a list of actively maintained SEO modules for Drupal.
Google Analytics (GA)
Google Analytics (GA) is free software from Google that is one of the most valuable starting points for understanding and improving your SEO efforts to bring in traffic. It can tell you where your visitors are coming from (organic, direct, referral sites, social media, email...etc. and which of those traffic types convert the best so you can invest more in the channels that work). It can tell you if your site is throwing 404 errors.
If you don't have a Google Analytics account or you don't own your current account - The first thing you need to do is set up a free Google Analytics account. It takes two minutes and your life going forward will be a lot less stressful. The GA Module also has some nice customizations you can set to make sure your data tracking is that much more accurate.
- Mike Carter
Allows you to automatically provide structured data regarding the topic/services you specialize in. Specifically the ability to update the Meta Title and your Meta Description.
Customizing those and better indicating your relevance will increase your likelihood to rank in search results when someone searches for your products or services. It also allows you to customize Open Graph Protocol so you can control how the content appears when shared on social networks.
- Dave Reid
While we're on the topic of meta data. Any Drupal user knows that you have limited control over the meta data of Taxonomy Terms.
This module was designed to update the heading tag at the top of the taxonomy term page. The contents of this H1 (or sometimes H2) tag are *extremely* important for SEO (Search Engine Optimization).
This module creates a sitemap that conforms to the sitemaps.org specification.
Having a map of the pages and structure of your site helps search engines to more intelligently understand and index the contents of a website and update their index when we make changes to our sites. The sitemap created by the module can be automatically submitted to all the major search engines.
- Dave Reid
This is a collaboration between these two modules:
- Dave Reid
This module assists with website/domain ownership verification for search engines. There are two types of verification methods supported. Usually a search engine will send you a meta tag to add to your site, or ask you to upload a specific file.
When provided with a file to upload, this module makes it easy because you can upload the file in the module's interface and the proper filename and file contents will be saved and used in the authentication process.
- Dave Reid
Rather than showing a standard '404 Page not found', the Search 404 module performs a search on the keywords in the URL.
So that if a user goes to www.pagenolongerexists.com/what-do-i-do-now, this module will run a search for 'does not exist' and shows the result of the search instead of the 404 page.
Even though Google has stated that they don't penalize websites for broken links this module might improve the users experience and ideally reduce the rate at which users bounce off your website when they come in from an old URL.
- Zyxware Technologies
Periodically tries to detect broken links by checking the remote sites and evaluating the HTTP response codes.. It shows all broken links in the reports/logs section and on the content edit page, if a link check has been failed.
While Google has said it won't penalize people for 404 pages - broken links create a bad user experience and if you truly care about the user (and you should if for no other reason than Google cares about them) correcting broken links should be at the top of your list to make sure is running smooth.
Drupal SEO Checklist
This module uses best practices combined with a standardized checklist to make sure you're properly optimizing your Drupal site for search engines consistently.
Since its actively maintained this module is updated regularly with the latest techniques and makes on-site Drupal SEO a snap. While there is no module that will tell you your keyword strategy this one is good to ensure consistency.
- Ben Finklea
Path Redirect Import
This module allows us to include path redirects in a simple way by bulk importing redirects using a CSV file. All redirections can be done at the same time. Very useful module for changing your website from your URL path structure to one that's more user and search engine friendly.
Helps you better indicate your relevance to search engines by enabling a quick SEO analyzer that provides instant analysis of any site content as a quick and easy guide to assure SEO best practices are consistently followed.
- Tom McCracken
Custom Drupal SEO Modules
EDUCO's Custom Bulk Metadata Administration
Allows you to edit or rewrite Meta Titles, Meta Descriptions and Image Alt Text in Bulk. Better indicating your relevance and increasing your likelihood that you'll come up in relevant search results.
Experimental Drupal SEO Pack Module
Here is one SEO Module that is not fully ready for the contributed module market and is recommended for developer use only:
Have a Favorite Drupal SEO Module Not Mentioned?
If you have any core, contributed or custom modules that you'd like us to consider including in our list or if you'd like a demo of our custom module we'd love to talk and share it with the Drupal community.
Or if you're hungry for more we also have a nice walkthrough we've developed to Improve Your Drupal Site's SEO in 7 Steps.
What makes an SEO Friendly CMS?
Effective Search Engine Optimization (SEO) starts with a strong technical foundation. There are many requirements for SEO, especially when it comes to metadata. You need a platform that makes it easy to set up your content and metadata for SEO success.
Once you're set up, successful SEO requires frequent measurement and improvement. A simple SEO strategy looks something like this:
Analyze > Tweak > Measure > Start Again
SEO is iterative — it requires continuous improvement. So, there's a lot of tweaking involved. An SEO Friendly Content Management System (CMS) empowers users to tweak and optimize their content without requiring extensive coding skills.
But there's more to SEO than tweaking and technical requirements. A solid SEO strategy involves extensive content publishing. You need a platform that simplifies content creation.
Is Drupal SEO Friendly?
Yes! Drupal is SEO Friendly. Here's why:
- It provides a strong foundation for technical SEO
- It empowers content managers and marketing to improve SEO through tweaking
- It simplifies content publishing (and fresh content is critical to SEO)
At EDUCO, Drupal is a critical piece of our website consulting practice and website marketing strategies. But we wanted to expand the conversation.
So we talked to our friends at Digital Third Coast — one of Chicago's top SEO & SEM agencies. They shared their insights on Drupal SEO, and you'll see them quoted throughout this post.
A Drupal SEO Checklist
When we spoke with DTC, they made a great point about SEO in general:
'The biggest shortcoming with any CMS is that it’s too easy to not have certain SEO elements in place unless you know what you’re looking for.'
And we agree. Unless you understand effective SEO, even the most powerful CMS won't get you very far.
That's why we created this 7-Point Drupal SEO Checklist. It will guide you through everything you need to set up and tweak your Drupal site for SEO success. In this post, we'll cover these key topics:
- How to set up Google Analytics in Drupal
- How to manage critical metadata like Title Tags, Meta Descriptions, and Image Alt Tags
- How H1s work in Drupal
- URL paths and redirects
- Drupal SEO Innovations
Let's dive in.
Set up the Drupal Google Analytics Module
Google Analytics is a critical first step for Drupal SEO. Proper website planning should include adding and verifying Google Analytics. Already have Google Analytics installed on your Drupal site? Feel free to skip this step.
Drupal supports the Google Analytics module. As one of the most popular Drupal SEO modules, it's actively maintained by the Drupal community. The best part about the Google Analytics module is its simplicity. You can add Google Analytics tracking code without adding any code to your website.
Here's how to add a tracking ID in the Google Analytics module:
1. With the module installed, navigate to Configuration > System > Google Analytics. The URL will be yoursite.com/admin/config/system/googleanalytics
2. Paste your Web Property ID in the required field:
You want to make sure that you're not tracking admin users. If your team works in the site regularly, this can skew your Analytics data. Drupal's Google Analytics module makes it easy to exclude administrators and content editors.
Here's our recommended configuration.
Exclude Admin Pages from Tracking
1. Within the module configuration, go to Tracking Scope > Pages
2. Select 'Every page except the listed pages'
3. Add these pages:
Exclude Admin & Content Manager Roles from Tracking
1. Within the module configuration, go to Tracking Scope > Roles
2. Select 'Add to every role except the selected ones'
3. Select the roles you wish to exclude. For example, you may exclude all authenticated users. Or you may exclude specific roles. At EDUCO, we exclude any EDUCO team members:
Verify Your Google Analytics Tracking Code
Once you've set up Google Analytics, you're ready to verify that it's working. You can (and should) check this in your Google Analytics Account. We also like to verify it in the website code. Here's how:
1. Open up your website in Chrome or Firefox as an unauthenticated user. Make sure you are not logged in.
2. Right click and choose 'View Page Source'
3. Hit 'Command + F' to engage the 'find text' feature. Search for 'UA-' — this will quickly search your code and take you right to the Analytics code
4. Double check by going to Google Analytics > Real Time > Overview. Then pull up your website in another browser. If you see an active new session from the city you're in there's a good chance its you and your code is tracking. To be extra sure go at a time that no one else is likely to be on your site.
Now you're all set with the Drupal Google Analytics module!
Update Title Tags with the Metatag Module
Google highly values the structured metadata of your website. Not all metadata is created equal. But most metadata deserves your attention.
Metadata comes from specific pieces of content. Pages, links, and images have their own metadata. So you'll manage metadata in a few different places throughout your site. You can manage most of your metadata using the Drupal Metatag module.
While there are other Drupal SEO modules for metadata, we recommend Metatag because it's widely adopted and supported. At the time of this article, Metatag has been downloaded 2,277,297 times. It's been installed on 354,441 Drupal sites (and counting).
The trend in Metatag module adoption via Drupal.org — one of the most popular Drupal SEO modules
What is a Title Tag?
The Title Tag — sometimes called the Page Title or Meta Title — is a critical piece of metadata. Title Tags are important because they tell Google what a specific webpage is all about.
Here's what Google has to say about Page Titles:
'Create descriptive page titles... Titles are critical to giving users a quick insight into the content of a result and why it’s relevant to their query. It's often the primary piece of information used to decide which result to click on, so it's important to use high-quality titles on your web pages.'
Are you optimizing your website content to align with keywords? The Title Tag is a great place to start.
Let's start by identifying the Title Tag as it appears in search engines. Your page's Title Tag appears as the headline for your Google Search result:
The Title Tag in Google Search Results
It also appears at the top of your browser, if you use Chrome or Firefox:
The Title Tag in your browser
And you can find it in your page source within the <title></title> tags:
The Title Tag in your website code
How to Update Title Tags in Drupal
Drupal makes it easy to change the Title Tag for any specific page. This is available using the Metatag module.
1. Make sure that the Metatag Module is installed in your site
2. Go to the desired page and click 'Edit'
3. In the edit menu, select 'Metatags'
4. Edit the 'Page Title' field — this is your Meta Title
The Metatags menu within a Drupal node; The field to edit your Title Tag
Update Title Tags in Bulk with the EDUCO Metadata Module
Sometimes you want to change Title Tags in bulk — especially if you are doing a Drupal SEO audit. We recommend auditing and revising your title tags once a year.
For Drupal site owners, this used to be a cumbersome process. It's easy to update metadata on a single page. But updating site wide metadata takes a lot of time and effort.
That's why we created the EDUCO Metadata module. An extension of the Metatag module, this enables content managers to update metadata in bulk. It's as easy as updating metadata in a spreadsheet:
The EDUCO Metadata Module — update your Title Tags tags in bulk
Update Meta Descriptions with the Metatag Module
The Meta Description is similar to the Title Tag — it's an important piece of Metadata that doesn't appear on the front end of your site.
Unlike the Title Tag, the Meta Description does not impact your search ranking. In 2009, Google announced that they 'don't use the description meta tag' in their search engine ranking.
But the Meta Description is still important. Why? Because it appears in the search result snippets for your page. Think of the Meta Description as the ad copy for your organic search results. It tells visitors what your page is all about:
Meta Description in a Google Search result snippet
Like the Title Tag, you can easily edit your Meta Descriptions using the Drupal Metatag module. The Meta Description field is located just beneath the Page Title field:
The Metatags menu within a Drupal node; The field to edit your Meta Description
'We like that Drupal is fairly clean and relatively self-manageable. We were able to pretty much indicate everything we needed/wanted and it was built in a way that suits our SEO needs.'
The H1 is the primary headline on your page. Technically, it's part of the body content of a page. In most cases, the H1 is the page title that displays for front end users:
The H1 is highlighted and shown in the code with the tags <h1></h1>
The H1 is valuable Drupal SEO content — Google bots read the H1 as the most important piece of body content. So, we recommend optimizing H1s for relevant SEO keywords.
It's easy to manage H1s in Drupal. By default, Drupal will treat your node title (or taxonomy term title) as an H1. To edit your H1, simply change the title of a node or taxonomy term:
Add Image Alt Tags
The image alt tag is a text attribute that accompanies an image tag. We commonly refer to this attribute as the 'image alt tag' or 'image alt text.' Like metadata, the image alt tag doesn't appear on the website front end.
Google bots can only read text — they can't read images. So we use image alt tags to tell Google what each image is about.
It's not just about Drupal SEO — image alt tags are also important for web accessibility. For example, a blind user will browse your site using a screen reader. Like Google bots, screen readers can't read images. So we use image alt tags to describe images for screen readers.
This image has an alt tag. In the code, you'll see alt='User Story Example'
There are a few different ways to add image alt text in Drupal. The process depends on how you're adding images.
Add Alt Text to Images via Image Upload Fields
You can use image upload fields to add images directly to a content type or taxonomy term. For example, on the EDUCO Service pages, we have a field for 'Featured Image':
Whenever you add an image in a field, you'll have the option to add image alt text.
You can also change the image alt text at any time by clicking the 'Edit' button. This will open up a dialog box with the image alt text field:
Add Alt Text to Inline Images in the WYSIWYG Editor
Sometimes, you want to add images within the WYSIWYG Editor. Let's say you're writing content for a blog post. You want to add an image within the body copy. That's an inline image.
The exact process will depend on the WYSIWYG Editor you are using. At EDUCO, we use CKEditor. It's the most popular Drupal WYSIWYG Editor and has been included in Drupal 8 core.
Using CKEditor, you can add alt text to inline images. Simply click the image icon in the WYSIWYG panel. Then, edit content in the Alternative Text field:
Update Image Alt Text in Bulk with the EDUCO Metadata Module
If you're optimizing your site, you may need to update image alt tags in bulk. Let's say content managers have been posting blog posts regularly, but they're not always SEO conscious. You may have some images with no alt text at all.
What's a web marketer to do?
It's cumbersome to search every single image... where would you start?
That's why we created the EDUCO Metadata module. An extension of the Metatag module, this enables content managers to search for missing image alt tags and update image alt tags in bulk. It's as easy as updating content in a spreadsheet.
Optimize Drupal URL Structure with the PathAuto Module
According to Google, 'A site's URL structure should be as simple as possible. Consider organizing your content so that URLs are constructed logically and in a manner that is most intelligible to humans (when possible, readable words rather than long ID numbers).'
Simple URLs are good for Google Search bots and good for humans. Use a simple URL structure to indicate relevance to Google and improve navigation for web users.
Drupal makes it easy to manage your URL structure. In Drupal, you can create a custom URL alias for each piece of content.
The URL alias is the part of your URL structure that comes after your primary domain. For example, http://www.your-primary-domain.com/your-URL-alias
URL with the URL alias highlighted
The first step to custom URLs is to enable clean URLs in your Drupal configuration. With clean URLs enabled, editing URL aliases in Drupal is simple. Here's how:
1. Go to the piece of content in question and click 'edit'
2. Go to the 'URL path settings'
3. Enter your custom URL alias
How to enter a custom URL alias in the URL path settings
Create Automatic URL Aliases Using PathAuto
Creating custom URLs for each piece of content? That's intense.
Thankfully, Drupal makes it easy to create user-friendly URLs automatically. For this, we recommend the PathAuto module — one of the Drupal SEO modules we use on every site. This useful module has 729,940 reported installations (and counting).
The trend in PathAuto adoption via Drupal.org — one of the most popular Drupal SEO modules
PathAuto automatically creates human-readable URLs based on a pattern system. The pattern system uses tokens, so you can easily edit URL patterns in your Drupal CMS. With PathAuto, you'll create SEO-friendly URLs every time you publish content:
PathAuto Tokens in the Drupal CMS
'You can install modules that allow the end user to change urls, which doesn’t seem fancy on its own, but the fact that it will automatically create a 301 redirect, and adjust the canonical tag on that page — that's fancy.'
Manage Drupal URL Redirects to Avoid 404 Errors
Editing URL structure? Make sure you understand URL redirects and 404 (page not found) errors.
Let's say Google has indexed a page on your website: http://www.your-primary-domain.com/some-old-alias
Then, you change the URL of that page so it says: http://www.your-primary-domain.com/some-shiny-new-alias
What happens to your old URL? Well... if it no longer exists, your old URL will return a 404 error, meaning 'page not found.'
To fix this, you need to create a 301 Redirect, so that /some-old-alias redirects to /some-shiny-new-alias
Why It Matters
There's a common misconception that Google will penalize your site for 404 errors. But Google has confirmed that there's no search penalty for 404 errors.
JohnMu to the rescue in Google Forums: Google does not penalize 404s
However, there are some major disadvantages when you lose old URLs to 404 pages:
- It's a bad user experience — if user has those pages bookmarked or you've distributed those URLs
- If there was any SEO value from your old page, that URL no longer exists... so you're starting over with your new URL
Wordpress Seo By Yoast
That's why it makes sense to create 301 redirects any time there is a URL change.
Fortunately, it's easy to create 301 redirects in your Drupal site. Here's how.
Create Drupal URL Redirects
You can create URL redirects using the Drupal Global Redirect module. It's another one of our recommended Drupal SEO modules.
It's especially useful because it allows you to create a redirect directly from the content in question. At EDUCO, we've had many different versions of our contact form over the years. We've used URL redirects to manage our many URL changes... directly from our contact form:
Pictured: All the URL Redirects
Are you using the PathAuto module to create automatic URL aliases? Then we recommend creating automatic URL redirects, too. Here's why.
If you're creating automatic URL aliases, your URL alias will change every time you change your page title. Let's say a content manager changes the title of a blog post. It's URL alias will change as well. Thus they may (unknowingly) create a 404 error. With automatic URL redirects, Drupal will fix this problem for you.
Beware of URL Redirect Loops
Here's a pro tip for URL management in Drupal: If you have automatic URL aliases and automatic URL redirects, be careful not to create redirect loops.
A redirect loop occurs when you redirect a page to itself. This results in an infinite loop, making the page inaccessible to Google search bots and humans alike.
Drupal Seo Tools
Here's how this can happen in Drupal: you rename a page, then you decide you like the old page name better, so you change it back. When you do this, you must make sure that you haven't automatically redirected the page to itself. Here's a breakdown of how this happens — and how to avoid it.
Step 1: Changing a Page Name
Suppose I have this page called 'Some Old Page.' I'm editing content and I rename it to 'Some Shiny New Page.' Here's what happens:
- https://www.your-primary-domain.com/some-old-page automatically changes to https://www.your-primary-domain.com/some-shiny-new-page
- There's an automatic redirect created from https://www.your-primary-domain.com/some-old-page to https://www.your-primary-domain.com/some-shiny-new-page
Step 2: Changing It Back
Then, as I'm editing, I change my mind. I actually liked the old page title more. So I change it back from 'Some Shiny New Page' to 'Some Old Page.' And here's what happens:
- https://www.your-primary-domain.com/some-shiny-new-page automatically changes back to https://www.your-primary-domain.com/some-old-page
- There's an automatic redirect created from https://www.your-primary-domain.com/some-shiny-new-page to https://www.your-primary-domain.com/some-old-page
And in this process, we have a redirect loop. In Step 1, I automatically created a URL redirect from /some-old-page. In Step 2, I changed the page URL back to /some-old-page.
Wordpress Seo Plug-ins
So I have created a URL redirect loop from /some-old-page to /some-old-page. Whoops.
How to Fix It
To fix this, all you need to do is find the URL redirect from /some-old-page and delete it in Drupal. Make sure to double check this URL as an unauthenticated user. If you're logged in, you won't see this URL redirect loop.
Wordpress Seo Coalition
What's Next for Drupal SEO?
SEO is always evolving. Every web marketer is familiar with this pattern:
Drupal Seo Checklist
- New trends in technology and marketing emerge
- Google announces changes in their search algorithm
- SEO experts react and adjust their tactics
- Just when we think we've got it down... Google announces another algorithm change
At first this might seem frustrating. But we like to think of it as an opportunity for positive change. SEO doesn't just encourage continuous improvement — it requires it.
Drupal = Continuous Improvement
Wordpress Seo Services
We believe in the value of continuous improvement. That's one of the reasons we love Drupal. Since Drupal is open source, the development community is quick to adapt to trends in technology. If there's a cutting edge problem in digital marketing, someone in the Drupal community is thinking about it — and, most likely, working on it.
Free Seo Analysis
Do you have a Drupal site? Are you considering Drupal for your website CMS? If so, we'd love to hear from you. We've built over 100 Drupal sites, and we have plenty of stories to share.