Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

BrightonSEO Structured Data by Alexis Sanders

4,581 views

Published on

Structured data

  • Very Nice: See Latest Blogs @ https://www.thesisscientist.com/Blog
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

BrightonSEO Structured Data by Alexis Sanders

  1. 1. Alexis Sanders Merkle Inc Advanced and Practical Structured Data @AlexisKSanders #brightonSEO
  2. 2. <script type="application/ld-json"> { "@context": "http://schema.org", "@type": “Product", "name": "Super Product!" "offers": { "@type": "Offers", "priceCurrency": "USD", "price": "12.99", } } </script> Find 5 errors in this JSON-LD.
  3. 3. Agenda <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Person", "name": "Alexis Sanders", "jobTitle": "Technical SEO Manager", "sameAs": "https://twitter.com/AlexisKSanders", "worksFor": { "@type": "Organization", "name": "Merkle", "url": "https://www.merkleinc.com" }, "url": "https://technicalseo.expert" } </script>
  4. 4. 4 Merkle SEO team works across a vast array of clients @AlexisKSanders#brightonSEO
  5. 5. 5 I’m Sophia’s #ProudAunt too. "relatedTo": { "@type": "Person", "name": "Sophia" } @AlexisKSandersHelping test Google’s “Bayesian Optimization for a Better Dessert” -> https://research.google.com/pubs/pub46507.html #brightonSEO
  6. 6. <script type="application/ld-json"> { "@context": "http://schema.org", "@type": “Product", "name": "Super Product!" "offers": { "@type": "Offers", "priceCurrency": "USD", "price": "12.99", } } </script> Answers  Should be +  Straight quote  Comma after property  Offer  No comma for last property
  7. 7. Moral of Story: It’s easy to make small errors, always validate!
  8. 8. Agenda • Overview • Why we <3 it • Practical • Advanced • Implementing A-Z (hopefully not zzz) • Common pitfalls Agenda
  9. 9. Structured data n. Information with a high degree of organization.
  10. 10. 10 Conceptual visualization of structured data for web Structured DataUnstructured Data < > Markup types JSON-LD Microdata Microformats RDFa (e.g., text) @AlexisKSanders#brightonSEO
  11. 11. Schema.org is a vocabulary (of many), but really is more comparable to a dictionary.
  12. 12. 12 http://schema.org/Product Definition (Item) type Each type (thing you markup) has a definition #brightonSEO @AlexisKSanders
  13. 13. 13 0 1 2 3 4 5 6 7 8 Story of web structured data: less ended up being more.DomainUsage(Millions) 201720162003 2004 2008 2010/1 2012 2013 2014 20151997 2000 < > http://webdatacommons.org/structureddata; https://www.slideshare.net/rvguha/sem-tech2014c * @AlexisKSanders
  14. 14. 14 Mircodata* <div itemscope itemtype="http://schema.org/Event"> <span itemprop="name">BrightonSEO</span> <meta itemprop="url" content="https://www.brightonseo.com/" /> <meta itemprop="startDate" content="2018-04-26T7:00" /> <meta itemprop="endDate" content="2018-04-27T16:15" /> </div> < > @AlexisKSanders*Note: Missing required properties, for illustrative purposes only #brightonSEO
  15. 15. 15 JSON-LD* <script type="application/ld+json"> { "@context": "http://schema.org/", "@type": "Event", "name": "BrightonSEO", "url": "https://www.brightonseo.com/", "startDate": "2018-04-26T7:00", "endDate": "2018-04-27T16:15" } </script> *Note: Missing required properties, for illustrative purposes only @AlexisKSanders
  16. 16. 16 MICRODATA < > Implementation What is it? HTML JavaScript Easier to copy and paste on page Can be easier for templated pages Support JSON-LD Microdata versus JSON-LD * *Rich results for products not consistently populating, yet (Aaron Bradley started a Community Tracker: https://goo.gl/kKZk2c) #brightonSEO @AlexisKSanders
  17. 17. Nesting n. organizing information in layers; adding objects in objects.
  18. 18. 18 Product name : offers : price : priceCurrency : @type : Offer reviewCount : aggregateRating : @type : AggregateRating ratingValue : Match Nest Me! Rated 4.5 out of 5 $7.29 (USD) 75 reviews Super Shine Apricot Shampoo brand : name : @type : Thing JĀSÖN #brightonSEO @AlexisKSanders
  19. 19. 19 Product name : offers : price : priceCurrency : @type : Offer reviewCount : aggregateRating : @type : AggregateRating ratingValue : Rated 4.5 out of 5 $7.29 (USD) 75 reviews Super Shine Apricot Shampoo brand : name : @type : Thing JĀSÖN Super Shine Apricot Shampoo 4.5 75 7.29 USD JĀSÖN Match Nest Me! #brightonSEO @AlexisKSanders
  20. 20. 20 <script type="application/ld+json"> { "@context": "http://schema.org/", "@type": "Product", name : offers : price : priceCurrency : @type : Offer reviewCount : aggregateRating : @type : AggregateRating ratingValue : Rated 4.5 out of 5 $7.29 (USD) 75 reviews Super Shine Apricot Shampoo brand : name : @type : Thing JĀSÖN Super Shine Apricot Shampoo 4.5 75 7.29 USD JĀSÖN } </script> " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " , , , , , , } } } { { { , , Match Nest Me! #brightonSEO @AlexisKSanders
  21. 21. Benefits:Why <3 Structured Data
  22. 22. 22 Product AggregateRating Offer 1. Enhanced SERP Results Note: Schema.org doesn’t necessarily need to be present for rich results to appear. #brightonSEO @AlexisKSanders
  23. 23. 23 MusicEvent Note: Schema.org doesn’t necessarily need to be present for rich results to appear. 1. Enhanced SERP Results #brightonSEO @AlexisKSanders
  24. 24. 24 Google’s featured snippets with rich results https://developers.google.com/search/docs/guides/ *Opt-in, must express interest Article BlogPosting Book* BreadcrumbList ClaimReview* Course Dataset* Event ImageObject ItemList JobPosting LocalBusiness* Movie (WatchAction*) MusicAlbum* MusicArtist* MusicGroup* NewsArticle Occupation Organization (ContactPoint, logo, sameAs) Person (sameAs) Product (Offer) Rating AggregateRating Recipe Review* SoftwareAppplication* TVEpisode (WatchAction*) TVSeason (WatchAction*) TVSeries (WatchAction*) VideoObject WebPageElement (isAccessibleForFree for Paywall Content) WebSite (SearchAction) https://developers.google.com/search/docs/guides/ @AlexisKSanders
  25. 25. 25 2. CTR for rich results = higher than without (in most cases) #brightonSEO @AlexisKSanders
  26. 26. 26 3. Offers potential to improve confidence in relevance “Known for” = representative term (e.g., [server], [host], [dinner] in article about restaurant) Google Patent: Assigning terms of interest to an entity 8,589,399, 3/26/12 Example of AssociatingTerms with Business Listing #brightonSEO @AlexisKSanders
  27. 27. “I want to live in a world where schema is not that important, but currently, we need it… https://searchengineland.com/gary-illyes-ask-anything-smx-east-285706 @methode Gary Illyes Google
  28. 28. …If a team at Google recommends it, you probably should make use of it, as schema helps us understand the content on the page… https://searchengineland.com/gary-illyes-ask-anything-smx-east-285706 @methode Gary Illyes Google
  29. 29. …and it is used in certain search features (but not in rankings algorithms).” https://searchengineland.com/gary-illyes-ask-anything-smx-east-285706 @methode Gary Illyes Google
  30. 30. Schema can help us extract entities better @JohnMu John Mueller Google Google Webmaster Hangout 2/1/18 ~42 Minutes: https://goo.gl/dsZRc6
  31. 31. Google doesn’t mind if people markup non- supported markup (change in SERP may not be noticeable) @JohnMu John Mueller Google Google Webmaster Hangout 2/1/18 ~42 Minutes: https://goo.gl/dsZRc6
  32. 32. We don’t use Schema.org as a quality factor @JohnMu John Mueller Google Google Webmaster Hangout 2/1/18 ~42 Minutes: https://goo.gl/dsZRc6
  33. 33. 33 4. Product Merchant Center Feed updates (2017) https://support.goog le.com/merchants/an swer/6069143 Structured data markup must be present in the HTML returned from the web server (i.e., no JavaScript generated tags) Benefits: • Automatic item updates • Google Sheets Merchant Center add-on #brightonSEO @AlexisKSanders
  34. 34. 34 5. Future: Support Voice (hypothesis) Google Mini pulls web answers from featured snippets. Featured snippets appear when Google has high confidence in usefulness of response. Structured data can support confidence ratings. @AlexisKSanders #brightonSEO
  35. 35. 35 • Microdata: 76% • JSON-LD: 25% • OGP: 68% • Twitter Summary Cards: 27% +25K eCommerce URLs populating with featured snippets: Twitter SEO Experiments: https://goo.gl/fRzmgf Important Note: Correlation does not imply causation. Huge thanks to @AlexisKSanders #brightonSEO
  36. 36. 36 Top Occurring Microdata for eCom with Snippet Twitter SEO Experiments: https://goo.gl/fRzmgf Huge thanks to OfferCatalog, 18% ListItem, 14% AggregateRating, 9% Product, 8%Review, 8% Rating, 7% NewCondition, 6% Offer, 5% Thing, 4% BreadcrumbList, 4% Other, 17% Important Note: Correlation does not imply causation.Huge thanks to #brightonSEO @AlexisKSanders
  37. 37. 37 Twitter SEO Experiments: https://goo.gl/fRzmgf Huge thanks to ListItem, 25% Offer, 16% Product, 15%WebPage, 6% BreadcrumbList, 5% Organization, 4% SiteNavigationElement, 4% AggregateRating, 3% WebPageElement, 3% ImageObject, 3% Other, 16% Top Occurring JSON-LD for eCom with Snippet Important Note: Correlation does not imply causation.Huge thanks to #brightonSEO @AlexisKSanders
  38. 38. 38 6. Future: Support Voice (speculative) http://pending.schema.org/SpeakableSpecification http://pending.schema.org/speakable http://money.cnn.com/2018/02/18/media/black-panther-box-office/index.html #brightonSEO @AlexisKSanders
  39. 39. Practical schema for pragmatic, busy people
  40. 40. 41 0 200,000 400,000 600,000 800,000 1,000,000 Organization PostalAddress Offer Article Person Product Blog WPHeader SiteNavigationElement WebPage Popular Schema: Top 10 Microdata by Domain < > http://webdatacommons.org/structureddata @AlexisKSandershttp://webdatacommons.org/structureddata #brightonSEO
  41. 41. 42 0 500,000 1,000,000 1,500,000 2,000,000 2,500,000 3,000,000 ListItem WebPage Event Place PostalAddress LocalBusiness Person Organization SearchAction WebSite Popular Schema: Top 10 JSON-LD by Domain http://webdatacommons.org/structureddata Sept '14 Oct '14 Jan '15 Jan '15 Sept '14 Dec '15 Dec '15 Dec '15 Aug ‘16 @AlexisKSandershttp://webdatacommons.org/structureddata #brightonSEO
  42. 42. 43 Practical Schema: Most sites BreadcrumbList Person Organization WebSite ItemList Properties itemListElement sameAs logo, contactPoint, sameAs potentialAction itemListElement TypeMarking up Breadcrumbs Person Organization Sitelink Searchbox Carousel Lists https://developers.google.com/search/docs/guides/ #brightonSEO @AlexisKSanders
  43. 43. 44 https://technicalseo.com/ seo-tools/schema- markup-generator @maxxeight Max Prin Merkle Implementing Practical Schema - Beginner @AlexisKSanders #brightonSEO
  44. 44. 45 Step 1: Navigate to JSON-LD Schema Markup Generator https://technicalseo.com/seo-tools/schema-markup-generator @AlexisKSanders
  45. 45. 46 Step 2: Select your Item Type from Dropdown Menu https://technicalseo.com/seo-tools/schema-markup-generator @AlexisKSanders #brightonSEO
  46. 46. 47 Step 3: Fill-in-the-Blank https://technicalseo.com/seo-tools/schema-markup-generator @AlexisKSanders #brightonSEO
  47. 47. 48 Step 4: Test in Google’s Structured Data Testing Tool https://technicalseo.com/seo-tools/schema-markup-generator https://technicalseo.com/seo-tools/schema-markup-generator @AlexisKSanders #brightonSEO
  48. 48. 49 Implementing Practical Schema - Intermediate https://developers. google.com/search /docs/guides/ @AlexisKSanders #brightonSEO
  49. 49. 50 Step 1: Read Guidelines Rules Opportunities @AlexisKSandershttps://developers.google.com/search/docs/guides/ #brightonSEO
  50. 50. 51 Step 2: Review Item Properties (especially note “Required”)! Required Properties @AlexisKSandershttps://developers.google.com/search/docs/guides/ #brightonSEO
  51. 51. 52 Step 3: Check out Example Markups Examples @AlexisKSandershttps://developers.google.com/search/docs/guides/ #brightonSEO
  52. 52. 53 Step 4: Reverse-engineer by replacing values Update values @AlexisKSandershttps://developers.google.com/search/docs/guides/ #brightonSEO
  53. 53. Schema for overachievers
  54. 54. 56 Schema.org (for brave souls) http://schema.org /docs/full.html @AlexisKSanders#brightonSEO
  55. 55. 57 Stages of Working with Schema.org ::a ton of confused stares:: ::intense concentration:: ::coffee + intense concentration:: ::unlocking the eternal mysteries within Schema.org:: http://schema.org/docs/full.html #brightonSEO @AlexisKSanders
  56. 56. 58 Step 1: Select Type from Schema.org’s Full Hierarchy http://schema.org/docs/full.html Select “Core plus all extensions” @AlexisKSanders #brightonSEO
  57. 57. 59 Item Type Page http://schema.org/docs/full.html (Item) type Hierarchy Description Usage http://schema.org/Aquarium @AlexisKSanders #brightonSEO
  58. 58. 60 Item Properties, Expected Type, and Description http://schema.org/docs/full.html http://schema.org/Aquarium @AlexisKSanders #brightonSEO
  59. 59. 61 Organization of Item Properties http://schema.org/docs/full.html CivilStructure Place Thing http://schema.org/Aquarium @AlexisKSanders #brightonSEO
  60. 60. “ExpectedType” tells you when you’ll need to nest objects (think: itemscope itemtype & "@type")
  61. 61. • Number • Float • Integer • Text • URL • Time If it’s a data type, you don’t nest • Boolean • False • True • Date • DateTime D A T A T Y P E S Don’t nest me!
  62. 62. nest nest nest nest nest
  63. 63. 65 Step 2: List Item Properties, Expected Type, and Values http://schema.org/docs/full.html http://schema.org/Aquarium #brightonSEO @AlexisKSanders
  64. 64. 66 Step 3: Add Syntax (JSON-LD) <script type="application/ld+json"> { "@context": "http://schema.org/", "@type": "Aquarium", "name": "National Aquarium", "alternateName": "National Aquarium in Baltimore", "telephone": "+1-410-576-3800", "address": { "@type": "PostalAddress", "streetAddress": "501 E Pratt St", "addressLocality": "Baltimore", "addressRegion": "MD", "postalCode": "21202", "addressCountry": "US" } } </script> Beginning Type Properties Type Properties end *Note: Missing required properties, for illustrative purposes onlyhttp://schema.org/Aquarium #brightonSEO @AlexisKSanders
  65. 65. 67 Step 3: Add Syntax (Microdata) <div itemscope itemtype="http://schema.org/Aquarium"> <span itemprop="name">National Aquarium</span> <meta itemprop="name" content="National Aquarium in Baltimore" /> <span itemprop="telephone">+1-410-576-3800</span> <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress"> <span itemprop="streetAddress">501 E Pratt St</span> <span itemprop="addressLocality">Baltimore</span> <span itemprop="addressRegion">MD</span> <span itemprop="postalCode">21202</span> <span itemprop="addressCountry">US</span> </div> </div> Type Properties Type Properties end *Note: Missing required properties, for illustrative purposes only http://schema.org/Aquarium *Note: Missing required properties, for illustrative purposes only #brightonSEO @AlexisKSanders
  66. 66. Common Pitfalls
  67. 67. You
  68. 68. 70 Pitfall #1: Syntax • “” are not the same as "" –Microsoft switches "" to “” –Use a text editor • Mind your Commas • Tip: Pay attention to in SDTT #brightonSEO @AlexisKSanders
  69. 69. 71 Pitfall #2: Vocabulary Vocabulary • Pay attention to required/allowed properties • Schema.org types and properties are case sensitive reference • Tip: Check in the Structured Data Testing Tool #brightonSEO @AlexisKSanders
  70. 70. 72 Pitfall #3: Policy Violation • Adding information that is not on the page • Check Google’s Structured Data Policies: https://developers.google.com/structured- data/policies #brightonSEO @AlexisKSanders
  71. 71. 73 Pitfall #4: Nesting Errors • Make sure to attribute properties to correct item type –E.g., using “name” and giving the location the event name • Tip: Pay close attention to { } and itemscope #brightonSEO @AlexisKSanders
  72. 72. Future Predictions
  73. 73. Disclaimer:
  74. 74. Disclaimer:
  75. 75. Disclaimer:
  76. 76. I (like Dwight) am not a psychic Disclaimer:
  77. 77. 79 Future Predictions Google Schema.org Support AboutPage ApartmentComplex AudioObject AutoDealer Brand CollectionPage Comment ContactPage Corporation Hotel 1. Top Schema.org used w/o Google webpage documentation ImageGallery MusicPlaylist MusicRecording PriceSpecification RealEstateAgent Residence Store Table UserComments ViewAction#brightonSEO @AlexisKSanders
  78. 78. 80 Future Predictions Google Schema.org Support 2. Item types that support voice efforts SpeakableSpecification HowTo HowToDirection HowToSection HowToStep HowToTip HowToDirection HowToItem HowToSupply HowToTool HowToStep HowToTip QAPage Question Answer @AlexisKSanders #brightonSEO
  79. 79. 81 Future Predictions Google Schema.org Support 3. More for publishing and eCommerce (especially actions) AnalysisNewsArticle BackgroundNewsArticle OpinionNewsArticle ReportageNewsArticle ReviewNewsArticle EmployerReview UserReview ProductIndividualProduct ProductModel SomeProducts BuyAction QuoteAction GS1 Publishing eCommerce #brightonSEO @AlexisKSanders
  80. 80. 82 LifestyleModificationDiet PhysicalActivity ExercisePlan MedicalSignOrSymptom MedicalSign VitalSign MedicalSymptom MedicalCondition InfectiousDisease MedicalGuideline MedicalProcedure DiagnosticProcedure PhysicalExam SurgicalProcedure TherapeuticProcedure Future Predictions Google Schema.org Support 4. Things users want (e.g., medical answers from Dr. Google (http://health-lifesci.schema.org)) Proactive Health Reactive Health @AlexisKSanders#brightonSEO
  81. 81. Fun stuff for you  https://technicalseo.com /homework/structured-data/ https://technicalseo.com /seo-tools/schema- markup-generator/visual/ @AlexisKSanders#brightonSEO
  82. 82. 84 @methode Gary Illyes @JarnoVanDriel Jarno Van Driel @aaranged Aaron Bradley Experts to Follow @maxxeight Max Prin @searchliaison Danny Sullivan @JohnMu John Mueller @AlexisKSanders#brightonSEO
  83. 83. 85 Icon Sources https://www.flaticon.com/authors/: • dinosoftlabs • eucalyp • freepik • gregor-cresnar • maxim-basinski • nikita-golubev • pixel-buddha • pixel-perfect • popcorns-arts • smashicons • vectors-market • basic-flat-icons @AlexisKSanders
  84. 84. THANK YOU! SEE YOU AT THE NEXT #brightonSEO @AlexisKSanders /in/alexissanders

×