Schema.org product offer with a price range, or multiple offers with single prices?
-
I'm implementing Schema.org, (JSON-LD), on an eCommerce site. Each product has a few different variations, and these variations can change the price, (think T-shirts, but blue & white cost $5, red is $5.50, and yellow is $6).
In my Schema.org markup, (using JSON-LD), in each Product's Offer, I could either have a single Offer with a price range, (minPricd: $5, maxPrice $6), or I could add a separate Offer for each variation, each with its own, correct, price set.
Is one of these better than the other? Why? I've been looking at the WooCommerce code and they seem to do the single offer with a price range, but that could be because it's more flexible for a system that's used by millions of people.
-
I have a question about the offerCount item within an AggregateOffer type.
I want to show the "true" price range of every product in our inventory but we don't automatically load them all to the page. Most implementations I have seen that trigger the price range showing in the SERP have the individual offers marked up further down the page as well, but that wouldn't work for us. We show 10 or so out of 100s.
In my mind there are two options here. We can use the true aggregate price of the set and skip tagging up individual offers. Or we can tag up the offers displayed but still show what I am calling the "true" aggregate price. Any opinions on whether Google needs the individual offers tagged up? And any opinions on whether the individual offers tagged up need to "match" the aggregate offer prices?
THANKS
-
Anytime, John, I am happy to help!
-
Thanks Thomas.
AggregateOffer is what I was looking for.
-
Each product can have a few different variations
See Google's https://developers.google.com/search/docs/data-types/product
Aggregate offer properties
An
AggregateOffer
is a kind of Offer representing an aggregation of other offers. When marking up aggregate offers within a product, use the following properties of the schema.org AggregateOffer type:Properties lowPrice
Number, required
The lowest price of all offers available. Floating point number.
|
|highPrice
|Number, recommended
The highest price of all offers available. Floating point number.
|
|priceCurrency
|Text, required
The currency used to describe the product price, in three-letter ISO 4217 format.
|
|offerCount
|Number, recommended
The number of offers for the product.
|
https://developers.google.com/search/docs/data-types/product
**Just 1 **
Product rich results provide users with information about a specific product, such as its price, availability, and reviewer ratings. The following guidelines apply to product markup:
- Use markup for a specific product, not a category or list of products. For example, “shoes in our shop” is not a specific product. See also our structured data guidelines for multiple entities on the same page.
- Adult-related products are not supported.
- Reviewer’s name needs to be a valid name for a Person or Team For example, "James Smith" or"CNET Reviewers." By contrast, "50% off on Black Friday" is invalid.
To include product information in Image Search, follow these guidelines for required markup:
-
To show your product information in the rich image viewer: Include the
name
,image
,price
, andpriceCurrency
properties. Alternatively, instead ofprice
andpriceCurrency
, you can include any four properties and excludeprice
. -
To show your product information in the Related Items feature: Include the
name
,image
,price
,priceCurrency
, andavailability
properties. -
Be careful that the text you use is the same text that is on the page
-
https://www.distilled.net/resources/understanding-and-implementing-json-ld/
-
http://www.remicorson.com/add-woocommerce-product-to-cart-from-url-using-products-sku/
/*
- Remove the default WooCommerce 3 JSON/LD structured data format
*/
function remove_output_structured_data() {
remove_action( 'wp_footer', array( WC()->structured_data, 'output_structured_data' ), 10 ); // Frontend pages
remove_action( 'woocommerce_email_order_details', array( WC()->structured_data, 'output_email_structured_data' ), 30 ); // Emails
}
add_action( 'init', 'remove_output_structured_data' );
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
-
Best Practices For Angular Single Page Applications & Progressive Web Apps
Hi Moz Community, Is there a proper way to do SPA (client side rendered) and PWA without having a negative impact on SEO? Our dev team is currently trying to covert most of our pages to Angular single page application client side rendered. I told them we should use a prerendering service for users that have JS disabled or use server side rendering instead since this would ensure that most web crawlers would be able to render and index all the content on our pages even with all the heavy JS use. Is there an even better way to do this or some best practices? In terms of the PWA that they want to add along with changing the pages to SPA, I told them this is pretty much separate from SPA's because they are not dependent. Adding a manifest and service worker to our site would just be an enhancement. Also, if we do complete PWA with JS for populating content/data within the shell, meaning not just the header and footer, making the body a template with dynamic JS as well would that effect our SEO in any way, any best practices here as well? Thanks!
Technical SEO | | znotes0 -
An informational product page AND a shop page (for same brand)
Hi all, This is my first foray into e-commerce SEO. I'm working with a new client who sells upscale eBikes online. Since his products are expensive, he wants to have informational pages about the brands he sells eg. www.example.com/brand. However these brands are also category pages for his online shop eg. www.example.com/shop/brand I'm worried about keyword cannibalization and adding an extra step/click to get to the shop (right now the navigational menu takes you to the information page and from there you have to click to get to the shop) I'm pretty sure it would make more sense to have ONE killer shopping page that includes all the brand information but I want to be 100% sure before I advise him to take this big step. Thoughts?
Technical SEO | | MouthyPR1 -
How to deal with canonicals on dup product pages in Magento?
What's the best way to sort canonicals on duplicate product pages generated from products being in more than one category in a Magento web store? Thanks
Technical SEO | | Kerry_Jones0 -
Hreflang for multple countries but single language
I'm working on a site that has implemented hreflang. The site is all in English but has slight differences and breaks down to separate domains, so example.co.uk example.eu example.com the hreflang implementation targets specific countries per domain. This was tested using http://flang.dejanseo.com.au but Webmaster Tools has thrown up errors. For example, **URLs for your site and alternative URLs in 'en_GB' that do not have return tags. **But every page refers back.Any ideas what's going wrong?
Technical SEO | | MickEdwards0 -
Are Review Dates Necessary in Schema markup for Ratings to Appear in SERPS?
Schema seems to be properly set up according to Google Webmaster Tools and the Structured Data Testing Tool... https://developers.google.com/structured-data/testing-tool/?url=http://www.myessentia.com/mattresses/classic-8 Are dates for reviews necessary to getting the star ratings to appear in the SERPS?
Technical SEO | | schmeetz0 -
Hello I have an ecommerce site where many of the products are variations.
Hello I have an ecommerce site. Many of the products are variations. I am using the Yoast Woo Commerce plugin. My meta descriptions for each product category might only vary for length for example. 10 foot microphone cable: Hand soldered heavy-duty 24 gauge cable braided shield, CBI nickel XLR connectors Bulk pricing - Call for your price 615-406-3255 20 foot microphone cable: Hand soldered heavy-duty 24 gauge cable braided shield, CBI nickel XLR connectors Bulk pricing - Call for your price 615-406-3255 From a Moz report I am getting tons of duplicate content issues. What can I do to correct this issue? Thank you for your help.
Technical SEO | | edwardfrebow0 -
How do i raise my product pages authority - ecommerce
hi, just started here and going through my website to make sure everything is fine and relevant to the search terms i am aiming for. However i notice a lot of my pages have an authority of 1 which clearly isnt acceptable! how do i best go to modify this so the authority is risen?
Technical SEO | | GarethEJones0 -
Position of elements in the product page
Hello. As I am a SEO Beginner I wonder if the elements of the page will make a better or worse ranking. I ask this because my boss asked to change the order of the elements. He wants to put first the section of Supplies and Accesories, and then additional information. http://www.theprinterdepo.com/hp-9500mfp-refurbished-printer Does it affect my seo for worse or for better?
Technical SEO | | levalencia10