Saturday, 6 April 2024

Headless SEO: Your Guide For a Correct Implementation
Five main takeaways from this guide:

- Decoupling content from presentation with headless CMS provides flexibility and performance benefits but requires careful planning for SEO.

- Choosing the right headless CMS platform is crucial - assess SEO functionality and ability to customize metadata/URLs.

- Optimize metadata by utilizing structured content types and fields for titles, descriptions, etc.

- Manage redirects and use static, relevant URLs for better indexing and ranking.

- Implement sitemaps, optimize for mobile, improve page speed, and track success with metrics like organic traffic and conversions.

How Does Headless Relate to SEO?

Usually when we think of SEO and changing URLs or content on your website, it's already stored in your CMS or database, and you're changing the location of this content to improve visibility. But with headless, you can have a developer create a brand new front-end that draws existing content from the database, meaning you never have to change the original content just to improve the way it's served.

Changing the URL of a certain page will also be possible without having to rework the content to fit the new URL. Nowadays, there are plenty of reasons why one might choose to create a new front-end, whether it be due to creating a mobile site, redesign or rebrand, or catering for different language and regions.

This offers the possibility of essentially future-proofing against URL and content changes that a web owner would usually do to improve SEO and traffic.

On the surface, headless is someone using an axe to lop off the top of a mannequin. In the context of software, a headless system is one where the front-end is decoupled from the back-end. When you navigate to a regular website, the content you see in your browser is the front-end, and the back-end is the database which stores this content. This is known as a coupled system. With a headless system, the browser-facing front-end is separated from the back-end, meaning the content is stored and managed independently and delivered to the user via a web service.

Today "headless" is a hot topic in the world of software. There are proponents and opponents, but some people are still uncertain as to what the term really means. This really isn't surprising as headless has been applied in different contexts, which has led to some ambiguity. Now that it's becoming increasingly relevant with regards to SEO and more specifically enterprise-level CMS's, we wanted to clear the air and define what headless SEO means in the current digital landscape.

What is Headless SEO?

Headless SEO is not a unique type of search engine optimization. It merely refers to a technical implementation for web projects. In traditional, "non-headless" implementations, a user's browser requests a web page URL, which is routed to the server that fetches the page content and data from a CMS, compiles it, and serves back a full HTML response. This typically is done on the server with a server-side language, and the HTML, CSS, and JavaScript are all built together.

The HTML is the final output, and is what search engine bots see and index. This has been a tried and true method for many years, and has a lot of SEO best practices and compliance built around it. Headless CMS on the other hand, has gained traction recently with companies seeking to modernize their web technology approach.

With a headless CMS, content is created and stored in the same way as with a traditional CMS, but the collection of the HTML and the content is decoupled or "headless." This means that the content can be used in many different ways such as mobile apps, internet-of-things devices, in-store displays, and, of course, websites. Instead of a server creating HTML and content together, the content is requested by client-side JavaScript that can be served in an HTML response. Because JavaScript can run in many environments, headless content is far more versatile.

One of the most visible benefits of a headless approach is faster content delivery using JavaScript. Since content is not pre-compiled, it can be served fresh from a CDN cache with an updated "serverless" JS API response, rather than routing requests all the way back through the server for a new HTML page load. This is especially beneficial for international companies with slow internal networks and customers far away from content servers.

Benefits of Headless SEO

Due to the separation of back-end and front-end technology, the website performance can be vastly improved.

The back-end system and front-end system can be worked on simultaneously as they are separate entities, meaning no downtime to work on SEO issues and updates. Even without publishing any new changes to the web, the Search Engine Optimization team should be able to improve the website's SEO via adjusting the content and re-crawling internal links. This may be more difficult with changes implemented to a traditional website for factors such as page load and display changes.

For example, if a user was to search for something via a search engine and your site shows up, when the user clicks on the link and the page does not exist or is a different URL because it is no longer indexed, they will face a 404 error and leave your page. This is highly undesirable for any website, as it will directly decrease traffic and ultimately revenue.

In a headless situation, any of these issues caused by SEO changes can be easily identified by comparing the current live website with what is in the content management system. Any discrepancies can be fixed immediately.

Challenges of Headless SEO

But often you will find yourself needing to store meta information separately in something like a JSON file which can then be linked to the URL. Other times a headless CMS will not allow you to create a different content type for something like a landing page which traditionally would be stored as metafields on a page in the CMS. This can make implementations more complex and less flexible.

👉 Implementing metafields: The lack of standardized approach to metafields between headless CMS often means you will need a different strategy depending on each project. Some headless CMS offer enough customization on content types to allow for any meta information to be added there, which is the most straightforward way.

The complexity of headless SEO setup introduces difficulties you wouldn't face when dealing with a traditional CMS setup. Here are some of the challenges you might face.

Implementing Headless SEO

Performance: Another seemingly obvious point. Fast load times are key to good on-site SEO. Make sure that your chosen CMS has the capabilities to deliver content quickly, some might not scale well with larger or global content operations.

👉 SEO functionality: This probably goes without saying, but SEO functionalities can still vary greatly between headless CMS offerings. Some might provide you with the tools to add meta tags and make simple changes to URLs, but lack the ability to generate and manage sitemaps or make more complex redirects which you might deem as essential to your SEO strategy. Make sure it can do what you need it to do.

It all starts with choosing the right headless CMS. Many will make the case for using your existing CMS in headless mode to save on costs and to carry over SEO functionalities which might present a valid case. But if you're already in the process of evaluating a migration from traditional to headless CMS, it's likely that you're in search of greater flexibility and improved UX from your content and site; these were key drivers for 45% of companies moving to headless according to a recent survey (GITNUX2024). If that's the case, it might make sense to move on from your existing CMS.

Assuming you're sold on going headless, there's a few things to look out for when selecting the platform:

Choosing a Headless CMS

Now it's time to put headless SEO into practice. You should have a certain level of awareness of SEO processes and practices already in place given the complexities of headless implementations. You know that optimizing your content for discovery and understanding by the search engines is key. Here's how to make that happen.

Choosing a Headless CMS

For many, the traditional route to content management is indeed a CMS (Content Management System), with some more popular examples being WordPress, Drupal, and Joomla. These systems allow you to write and organize content quickly and efficiently, while also providing ways to sort, filter, and display said content to your website's visitors.

The best part is that you can do all of this without having to touch your site's code. But with a traditional CMS, the content you create is intrinsically tied to the system it was created in. In other words, you are creating and managing content for a specific front-end. With WordPress, for example, creating content will be creating content for a PHP + MySQL architecture (WPMUDEV2022). This ties your hands a bit and limits the possibility of what you can do with your content.

You are forever bound to the system, and if you want to move your content to a different system, it will be a pain to do so.

Structuring Content for SEO

Firstly, most traditional and even headless CMS allow for entry of metadata data on a per-page basis. At the very least, you'll likely be able to define a meta title and description for each page or article. It's totally OK to continue using Yoast or AIOSEO with your headless CMS to manage metadata. If your new CMS has an API, such as WordPress with the REST API or Drupal with JSON API, using a third-party SEO platform can be a good way to bridge the gap between content entry and SEO.

These platforms can import content data from your CMS and allow your marketing team to manage SEO using friendly UI. The platform then stores and serves the SEO data to your site or app using the CMS API.

This method offers a nice separation between content and SEO that can work well for some organizations. But if do want your SEO to be firmly tied to your content, there are methods for storing SEO data directly with your articles in certain headless CMS. The most flexible way to manage SEO is to treat it as just another layer of content data. In order to do this, your CMS must allow for SEO attributes to be defined dynamically around static content.

The best way to illustrate this concept is with an example.

Let's say we're creating an article in a headless CMS and our SEO goal is to target a specific keyword and have an optimized a rich Twitter card used when the article is shared. With static meta fields on a per-page basis, it might be possible to define a meta title and description for the article, but it would be difficult to define custom Twitter card data without editing the metadata or hardcoding the Twitter card into the page source.

An easy way to define SEO data on a per-article basis is to include the ability to make custom fields within existing content types or create SEO-specific content types that are tied to articles. Static meta fields can still be used to define a fallback for data, but by creating SEO attributes that are stored dynamically around our content, we can make data entry more efficient and encompass a wider range of SEO needs.

This same concept can also be applied to other site content that might not be entirely static, such as product data. By creating a more flexible infrastructure to manage SEO, your marketing team will be empowered with more ways to drive visibility to your content.

Optimizing Metadata and Tags

A direct example of well ordered meta content can be found in this blog, from the Contentful website. Any changes made to this metadata then only requires simple publishing unlike editing metadata within traditional CMSs. Step up the point above this is because no frontend code is actually being modified in the process.

When using a headless CMS, because the pages are generated server side (and are intended to be modified by front end code) it becomes much easier to edit metadata sharing across pages or changing how it looks at a later date, however the metadata itself still needs to be provided in the first place.

One way this is best achieved is by use of prebuilt content types containing metadata fields for specific purposes. For example, there should be a content type for a page title and description field suited to a webpage. Each field in the content type would have defined usage for the whole field, for example the meta description field might be restricted to 150 characters. This is use of form validation in the CMS and is good for preventing faults which could make metadata unreadable by search engines.

Metadata consists of information about a webpage that doesn't appear on the page itself, e.g., meta tags which are descriptions of content, image alt tags, page titles etc. Metadata has always been a vital part of getting a webpage indexed by search engines so the key points here is what should be prioritised and what can be left behind.

Managing URLs and Redirects

Creating a sitemap is another method for ensuring that search engine spiders can find and index all of a site's pages. There are many types of sitemaps, but usually the most effective are those coded in XML, which is supported by Google and other major search engines. XML sitemaps list all the URLs of a site and provide metadata that gives extra information about each URL and when it was last updated. This all makes it easier for search engine spiders to find links to all the pages of a site and more thoroughly index the content.

Often an XML sitemap can lead to more of a site's pages getting indexed than would occur through regular incremental crawling of the site.

Dynamic URLs often prove to be an obstacle in website optimization. Often times search engine crawlers are unable to index dynamic URLs, thus hindering the chances of website pages being ranked high in the search engine results. It is crucial to use static URLs since the relevancy of the URL to the page's content is favorable. This will increase the probability of a page being indexed and ranked under search engine results. Dynamic URLs are generated from specific queries to a site's databases.

This occurs often in CMS and eCommerce sites when users are trying to find specific information. These URLs are often times long strings of symbols that are not easily indexed. Static URLs, on the other hand, are displayed cleanly in the address bar and do not require specific queries to access.

Best Practices for Headless SEO

When adding hreflang to your mobile and desktop URLs, make sure that they are the correct URLs based on the users' (or Google's) perceived preference. For example, when someone searches on their smartphone, make sure they are directed to the mobile URL, not the desktop URL. This also involves sharing the state of the users' preference for back-to-back URL changes between the mobile and desktop URLs. Follow the guidelines on how to use hreflang for bi-directional annotations as well as the standard guidelines to ensure your annotations are valid and reliable for Google to use.

For further guidance, refer to Google's official documentation: https://developers.google.com/search/docs/specialty/international/localized-versions

👉 Hreflang: If your mobile site has different URLs and/or content from your desktop site, you will be dealing with a bi-directional annotation. This involves adding hreflang to both the mobile and desktop URLs in order to show the relationship between the URLs that make up a set of pages where each page has an equivalent page on a different site.

👉 Configuration: On your mobile site, make sure the primary content and markup is the same as the desktop site. If you are using different URLs, this means the links to your mobile site should point to the equivalent URL on the desktop site. While the primary content and markup should be equivalent, it is alright to make use of mobile-specific content (such as a Flash warning) for those using a mobile phone.

First off, create a mobile URL for the mobile version of your site and make sure that all mobile URLs are verified in the Google Search Console. If your mobile site consists of exactly the same URLs and HTML as your desktop site, you can also check out our more detailed guide to mobile-friendly responsive web design.

Mobile Optimization

Mobile website usability is crucial and differs from desktop usability. Carefully consider your user interface and overall experience to provide the best experience to mobile users. Here's how to optimize your website for mobile devices:

- Embrace Responsive Design: Responsive design is the preferred approach for mobile-friendliness. It allows your website to seamlessly adapt to different screen sizes, ensuring a positive user experience across desktops, tablets, and smartphones.

- Focus on Mobile-Specific UX: Don't just shrink your desktop design. Optimize navigation, button sizes, touch targets, and content presentation for mobile. Make sure your content is easy to read and interact with on smaller screens.

- Prioritize Website Speed: Mobile users are often on slower connections. Ensure your website loads fast by optimizing images, minimizing code, and using efficient caching techniques.

- Choose the Right Implementation Approach: While responsive design is recommended for most sites, in rare cases, other methods might be necessary. If you believe your website has highly specialized needs requiring a separate mobile version or dynamic serving, carefully evaluate the benefits and maintenance overhead.

- Ensure Smooth Crawling: Regardless of your technical approach, make sure Google can easily crawl and index your mobile content. Avoid using robots.txt to block essential resources.

- Test, Test, Test! Always test your website on a variety of mobile devices. This is the most effective way to identify usability issues and create a truly user-friendly mobile experience.

Additional Tips:

Use Google's Mobile-Friendly Test directly from your Google Search Console > Core Web Vitals > Mobile report section:

Stay Updated: Mobile web practices evolve. Refer to sources like Google Search Central for the latest guidance.

Have a plan. This is a crucial part of the mobile optimization process. Having a clear idea of what you want to achieve and how you want to achieve it will make the whole process a lot smoother. Key aspects of your mobile optimization plan will include defining what your mobile audience is, ensuring your website is mobile friendly, researching and understanding what mobile users are searching for, and finally stepping into mobile application SEO.

Page Speed and Performance

Website performance can be improved in various ways, from optimizing image sizes to reduce the bandwidth without detrimentally affecting quality, or implementing lazy loading to avoid loading a heavy front-end all in one go. But most importantly, one of the best ways to increase web page load times is to implement a Content Delivery Network (CDN).

Are you wondering what a CDN is?

Essentially, CDNs are a system of distributed servers that deliver web content to a user based on their geographic location, the origin of the web page, and a content delivery server. Yes, CDNs are effective in web performance by minimizing the distance between the user and server to ensure fast and efficient webpage content delivery. Although this implementation may be costly, or not, depending on your website's needs. The effects on web performance can be dramatic.

Moving into the technical side of SEO, and it's one of the most important factors in any website, 53% of mobile website visitors are likely to leave if a webpage doesn't load within 3 seconds. (Roumeliotis & Tselikas, 2022) This is especially true with headless websites that tend to have heavier front-end structures.
https://speed.cy/seo/headless-seo-guide

No comments:

Post a Comment