H1 and Schema Codes Set Up Correctly?
-
Greetings:
It was pointed out to me that the h1 tags on my website (www.nyc-officespace-leader.com) all had exactly the same text and that duplication may be contributing to the very low page authority for most URLs.
The duplicate h1 appears in line 54-54 (see below) of the home page: www.nyc-officespace-leader.com:
itemscope itemtype="http://schema.org/LocalBusiness" style="position:absolute;top:-9999em;">
<span<br>itemprop="name">Metro Manhattan Office Space</span<br>
<img< p="">But the above refers to schema" so is this really duplicate H1 or is there an exception if the H1 is within a schema?
Also, I was told that the company street address and city and state were set up incorrectly as part of an alt tag. However these items also appear as schema in lines 49-68 shown below:
Dangerous for me to perform surgery on the code without being certain about these key items!! Could ask my developer, however they may be uncomfortable considering that they set this up in the 1st place. So the view of neutral professionals would be highly welcome!
itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<span<br>itemprop="streetAddress">347 5th Ave #1008
<span<br>itemprop="addressLocality">New York
<span<br>itemprop="addressRegion">NY
<span<br>itemprop="postalCode">10016<div<br>itemprop="brand" itemscope itemtype="http://schema.org/Organization">
---------------------------------------------------------------------------</div<br></span<br></span<br></span<br></span<br></img<> -
For suggestion 1, I should clarify that you already are using Microdata. Your Microdata is repeating what is already in the page, rather than "tagging" your existing content inline. Microdata is a good tool to use if you are able to tag pieces of content as you are communicating it to a human reader; it should follow the natural flow of what you are writing to be read by humans. This guide walks you through how Microdata can be implemented inline with your content, and it's worth reading through to see what's available and how to step forward with manual implementation of Schema.org with confidence.
Will these solutions remove the duplicate H1 tag?
Whatever CMS or system you are using to produce the hidden microdata markup needs to be changed to remove its attempt entirely. The markup of the content itself is good, but it needs to be combined in with existing content or implemented with JSON+LD so that it is not duplicating the HTML you are showing the user.
Are these options relatively simple for an experienced developer? Is one option superior to the other?
Both should be, but it depends on your strategy. Are you hand-rolling your schema.org markup? Is somebody going into your content and wrapping the appropriate content with the correct microdata? This can be a pain in the butt and time-consuming, especially if they're not tightly embedded with your content production team.
I downloaded the HTML and reviewed the Microdata implementation. I don't mean to sound unkind but it looks like computer-generated HTML and it's pretty difficult to read and manipulate without matching tags properly.
Is one option superior to the other?
Google can read either without issue; they recommend JSON+LD (source).
In your case, I'd also recommend JSON+LD because:
- Your investment in Microdata is not very heavy and appears easy enough to unwind
- The content you want to show users isn't exactly inline with the content you want read by crawlers anyway (for example, your address isn't on the page and visible to readers)
- It's simple enough to write by hand, and there exist myriad options to embed programmatically-generated schema.org content in JSON+LD format
Please review this snippet comparing a Microdata solution and a JSON+LD solution side by side.
PLEASE DO NOT COPY AND PASTE THIS INTO YOUR SITE. It is meant for educational and demonstrative purposes only.
There are comments inline that should explain what's going on: https://gist.github.com/TheDahv/dc38b0c310db7f27571c73110340e4ef
-
Hi Again:
Will option #1 (keeping existing microdata) remove the duplicate h1 tag? Your suggestion listed below:
"So, wherever the
tag with the company name lives that is rendered and shown to the user, ad the "LocalBusiness" itemscope to the parent tag that surrounds it and its content. Basically you'd merge your Schema.org code with the user-facing content"
-
Hi David:
Schema was added to the site discretely provide location data to Google.
You suggested 2 potential solutions:
1. Use Microdata...
2. Use JSON+LD..
Will these solutions remove the duplicate H1 tag?
We are concerned that the low rank of our URLs (80% are 1) are caused by duplicate H1s on each page.
Are these options relatively simple for an experienced developer? Is one option superior to the other?
Thanks for your patience in explaining these options, my programming understanding is limited.
Alan -
I see that you're using CSS to get that markup into the page, but definitely not visible to the user. Am I interpreting that right? If so, it seems like your goal is to get some Schema.org tags into the page to mark up your content as a LocalBusiness.
I have 2 ideas for you:
Use microdata (the markup format you're using now) to mark up your tags inline with your existing content. So, wherever the
tag with the company name lives that is rendered and shown to the user, ad the "LocalBusiness" itemscope to the parent tag that surrounds it and its content. Basically you'd merge your Schema.org code with the user-facing content
Use JSON+LD markup instead. You can get the same information "repeated" but the JSON+LD markup isn't rendered for users. jsonld.com has a great page with a template you can copy and adjust to suit your business. If you go this route, remove the microdata-laden HTML hidden off the page with the inline CSS and replace it with the JSON+LD wrapped in . Google also has some great documentation around the LocalBusiness type.
Hope that helps!
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
Could I set a Cruise as an Event in Schema mark up?
Hi there, We are now in the process of implementing a JSON-LD mark-up solution and are building cruises as an event. Will this work and can we get away with this without penalty? Previously they have been marking their cruises as events using the data highlighter and this has displayed correctly in the SERP. The ideal schema would be Trip but this is not supported by Google Rich Results yet, hopefully they will support this in the future. Another alternative would be product but this does not display rich-results as we would like. Event has the best result in terms of how the information is displayed. For example someone might search "Cruises to Spain" and the landing page would display the next 3 cruises that go to Spain, with dates & prices. The event location would be the cruise terminal, the offer would be the starting price and the start & end date would be the cruise duration, these are fixed dates. I am interested to hear the communities opinion and experience with this problem.
Intermediate & Advanced SEO | | NoWayAsh1 -
Are my language tags correct?
Hello, I have a Spanish website for Spanish speaking people es.example.com. I also have example.com for all English speaking people across the world. I want that users who go to google.es and search in English get our example.com site and others who search in Spanish on google.es get the Spanish site. Should the tags be like this: Or should we also have this tag aswell to specify? Otherwise we might only show the es.domain even for english queris? :
Intermediate & Advanced SEO | | advertisingtech0 -
H1 tag found on page, but saying doesn't match keyword
We've run a on-page grader test on our home page www.whichledlight.com with the keyword 'led bulbs' it comes back with saying there is a H1 tag, although the content of the keyword apperently doesn't contain 'led bulbs... which seems a bit odd because the content of the tag is 'UK’s #1 Price Comparison Site for LED Bulbs` I've used other SEO checkers and some say we don't even have a H1 tag, or H2, H3 and so on for any page. Screaming Frog seems to think we have a H1 tag though, and can also detect the content of the tag. Any ideas? ** Update ** The website is a single page app (EmberJS) so we use prerender to create snapshots of the pages.
Intermediate & Advanced SEO | | TrueluxGroup
We were under the impression that MOZ can crawl these prerendered pages fine, so were a bit baffled as to why it would say we have a H1 tag, but think the contents of the tag still doesn't match our keyword.0 -
How should I setup schema.org for ecommerce site?
I understand how to do products, what I am more curious about is the organization schema. Is it worth it to set it up as an ecommerce business? I would have to set it up on the About Us page for the site, does it matter to Google that it is not located on the homepage?
Intermediate & Advanced SEO | | EcommerceSite0 -
Correct Internal Linking Flow / Keyword Cannibalization
Hi, Would like some advice re our internal linking structure and possible keyword self cannibalization on our ecommerce site.. Will try and give you an overview. Imagine this page structure: Site
Intermediate & Advanced SEO | | bjs2010
Brand 1
Brand 2
Brand 2 Shoes
Products
Brand 2 Sweaters Then say in Brand 2 Shoes page we have the shoes, e.g., the products labeled as Brand 2 Shoes "Name of Model"
Brand 2 Shoes "Name of Model" Now, what I'm worried about is that if I do a search for "Brand 2 Shoes" it should bring up my landing page right? But it doesn't, it brings up some of the products instead... I'm worried that we may be self cannibalizing some of the keywords - and thinking of changing the product page to be "Brand Name of Model Shoes" or "Name of Model Shoes by Brand" Any ideas or comments appreciated! Thanks all0 -
Would spiders successfully crawl a page with two distinct sets of content?
Hello all and thank you in advance for the help. I have a coffee company that sell both retail and wholesale products. These are typically the same product, just at different prices. We are planning on having a pop up for users to help them self identify upon their first visit asking if they are retail or wholesale clients. So if someone clicks retail, the cookie will show them retail pricing throughout the site and vice versa for those that identify themselves as wholesale. I can talk to our programmer to find out how he actually plans on doing this from a technical standpoint if it would be of assistance. My question is, how will a spider crawl this site? I am assuming (probably incorrectly) that whatever the "default" selection is (for example, right now now people see retail pricing and then opt into wholesale) will be the information/pricing that they index. So long story short, how would a spider crawl a page that has two sets of distinct pricing information displayed based on user self identification? Thanks again!
Intermediate & Advanced SEO | | ClayPotCreative0 -
Stop Google crawling a site at set times
Hi All I know I can use robots.txt to block Google from pages on my site but is there a way to stop Google crawling my site at set times of the day? Or to request that they crawl at other times? Thanks Sean
Intermediate & Advanced SEO | | ske110 -
How to structure your site correctly for optimal juice flow?
Hello fellow mozzers. I have a question regarding structuring a site for optimal link juice flow. If you have an existing website that has for instance a contact page, we know its pointless for that page to have any juice at all. In a hypothetical scenario would it be ok to no index, no follow that page? What happens to existing pagerank on such a page? for instance if you have a contact page with pr 4 and you no index, no follow it, I understand the pagerank will disappear from that page but will it be distributed to other pages on your site? What would be the correct way of handling this scenario?
Intermediate & Advanced SEO | | rightmove0