Heading tags are pieces of HTML code that not only designates content to be headings but also follows a hierarchical structure, with h1’s being the most important heading and h6’s being the least important. They provide structure to a web page and are an important part of the user experience as well as onsite optimisation. Similar to how title tags are a succinct description of the page, the heading tags should be a succinct description of the content found in that section.


The <h1> tag should be the main header of the page or title of the post and will usually display as the largest font on the page as well. There should only be one h1 per page.


The <h2> tag can be used for the sub headings of each page and can be used multiple times. They are useful for breaking up content into clearly defined sections.

h3 – h6

The rest of the heading tags should be used to further breakdown content. For example, if a h2 was used to head up content around a particular subject, a h3 would then be the sub titles for that subject.

Automatic Browser Displays

Unless otherwise specified, placing a heading tag on a piece of content will automatically change how it is displayed in a browser. The constant amongst browsers is that heading tags will be bold but the font size will decrease. For example, the default browser font size for an h1 is 2em; whereas the font size for h6 is .67em;.

SEO Considerations for Headings

As per usual, keyword stuffing is to be avoided. Your heading tags should be a natural description of the content found within that section. Writing for the user should be the primary concern – do your heading tags sufficiently break up content and make it easier for the user to identify key pieces of information?

Having said that, your identified search terms from keyword research should always be in the back of your mind. Where possible, keywords should be included in the heading tags but once again this should realistically happen naturally. If you are are on the fence as to whether a particular heading tag should contain a keyword, think about the content. If the content does not naturally contain that keyword then chances are it shouldn’t be in the header and could be considered spam.

Google’s Hummingbird update looks at matching user intent rather than keywords. Google has an assumed authority amongst most people, i.e they trust what Google returns in search results. Furthermore, with the advent of voice activated search, people are now asking Google questions rather than typing (or saying) individual keywords. As a result, an effective option for heading tags is to format them as questions therefore displaying that you are tackling a certain topic and providing answers. As a result, Google can match a searcher’s intent with the content found on the page.

Technical Implementation of heading tags

Obviously the number in the tag will change according to the type of header that you want to create but to assign a piece of content as a header you use this code:

<h1>insert heading content here</h1>

Content management systems such as WordPress will often have a designated area to input a heading or title for a page. Many will automatically make this heading or title the <h1> for the page – which makes perfect sense and saves you time. CMS’ rarely offer the same functionality for h2-h6 tags so this may have to be implemented manually, in WordPress this can be done by switching from ‘visual’ to ‘text’.