SlideShare a Scribd company logo
An Introduction to
Advanced Schema
Auditing
Beth Barnham | Liberty Marketing
slideshare.net/bethbarnham
@bethbarnham
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "Person",
"name": "Beth Barnham",
"description": "Likes to adventure in the countryside, swim, and on a
rainy day, often found with a book in hand",
"jobTitle": "Technical SEO Specialist",
"knowsAbout": "Schema",
"worksFor": "Liberty Marketing",
"email": "beth.barnham@libertymarketing.co.uk",
"address": {
"@type": "PostalAddress",
"addressLocality": "Cardiff",
"addressRegion": "South Wales",
"postalCode": "CF14 5GJ",
"streetAddress": "Purbeck House, Lambourne Crescent"
},
"sameAs" : [ "https://linkedin.com/in/bethbarnham/",
"https://twitter.com/bethbarnham"]
}
</script>
What is Schema?
Converts HTML from an unstructured mess
to something easier to understand for the
search engine
Rich Snippet
Schema doesn’t need to
be maintained, but it does
need to be checked for
best practice.
Set targets that are
achievable and
actionable
It’s easy to implement
without the help of a
developer
What’s its
purpose?
Visibility
blogPosting, Article,
HowTo, Recipe
Keyword
strategy
Conversions
Event,
JobPosting,
Product
Meeting Google’s
search gallery
guidelines
Authority &
Trust
Organization, sameAs,
Website, Logo, Image
LocalBusiness
Wiki, social
media &
directories
Yeah, cool… but why
should I care?
Reactive and proactive
with its versatility
Studies suggest
3x CTR increase
10 million websites use
schema (just 1%)
8% of those said they work on
their markup once
(SEW, schema.org)
Builds relationships
between your
content, context &
entities
Most Popular Types
of Information
(Things)
Event
Examples
theatreEvent, comedyEvent, Hackathon,
BusinessEvent, eventattendanceMode
physical extension, address,
amenityFeature, branchCode, geo,
hasDriveThroughService,
CovidTestingFacility.
Place
A person of any description
including fictional.
additionalName, award, birthPlace
Person
Food recipe listing
Recipe
A listing to describe a job
opening
JobPosting
Corporation, School,
MedicalOrganization,
LocalBusiness
Organization
Schema Hierarchy
Event
Event
Textual property values
Event
Textual property values
BusinessEvent Things that they describe
Event
Textual property values
BusinessEvent Things that they describe
FoodEvent
Event
Textual property values
BusinessEvent Things that they describe
FoodEvent
PublicationEvent
Event
Textual property values
BusinessEvent Things that they describe
FoodEvent
PublicationEvent BroadcastEvent
Event
Textual property values
BusinessEvent Things that they describe
FoodEvent
PublicationEvent
BroadcastEvent
OnDemandEvent
How does it appear
within search?
JobPosting
@bethbarnham
Event
@bethbarnham
Relevancy to you
as a marketer
Knowing the best schema for your website
• Search trends in your niche
• Competitor activity
• Creativity
• Cool & interesting content
@bethbarnham
One off,
unpredictable
‘how to make
banana bread’
‘how to make
banana bread’
@bethbarnham
@bethbarnham
111,000
avg. vol
Seasonal
@bethbarnham
@bethbarnham
Evergreen
Content
@bethbarnham
No severe
trend spike
Auditing
Use Schema.org Validator for quick checks
@bethbarnham
New Client
Time Limitations
Current Situation
Pitching
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Scale
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Crawling
Configuration
>
Extraction
>
Structured Data
Run the crawl
>
File > Export
Scheduling
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Analysing the
Audit
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Writing
@bethbarnham
• Use a text or code editor
• Write using JSON, RDFa, microdata
• Templates available online
• Practice, test
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Testing
Testing
Shopify
Example
Using JavaScript we were able to create IF statement’s to
specify when a set of circumstances appeared on page, i.e. a
product page with description, price, sku
Using the most common product identifiers
Using Shopify’s ‘open graph’ tags
og_price = document.querySelectorAll("meta[property='og:price:currency']")
if (og_price.length > 0) {
productName = document.querySelector("head > meta[property='og:title']").content;
productDescription = document.querySelector("head >
meta[property='og:description']").content;
productPrice = document.querySelector("head >
meta[property='og:price:amount']").content;
currencyCode = document.querySelector("head >
meta[property='og:price:currency']").content;
productImage = document.querySelector("head >
meta[property='og:image:secure_url']").content;
const queryString = window.location.search;
const urlParams = new URLSearchParams(queryString);
const productVariant = urlParams.get('variant');
let schemaSku = "";
if (meta.product.variants.length === 1) {
schemaSku = meta.product.variants[0].sku;
} else if (!!productVariant) {
let product = meta.product.variants.find( e => e.id == productVariant);
schemaSku = product.sku;
} else {
let firstSku = meta.product.variants[0].sku;
let secondSku = meta.product.variants[1].sku;
let firstSkuArray = firstSku.split("");
let secondSkuArray = secondSku.split("");
for (let i = 0; i < firstSku.length; i++) {
if (firstSkuArray[i] === secondSkuArray[i]) {
schemaSku += firstSkuArray[i];
};
};
}
productJson = {
"@context": "https://schema.org",
"@type": "Product",
"image": productImage,
"name": productName,
"description": productDescription,
"offers": {
"@type": "Offer",
"price": productPrice,
"priceCurrency": currencyCode,
"sku": schemaSku
}
}
}
Outcome
{@context: 'https://schema.org', @type: 'Product', image:
'https://cdn.shopify.com/s/files/1/0408/3784/1060/p…0_SAMANTHA3FrontSQUARE_120
0x1200.jpg?v=1633600564', name: 'Samantha - Bobble Fur Hooded Dressing Gown',
description: 'The Samantha snow tipped Sherpa Fleece hooded dres…herpa fleece
fabric with snow tipped finish Knee-', …}
@context: "https://schema.org"
@type: "Product"
description: "The Samantha snow tipped Sherpa Fleece hooded dressing gown is
the perfect companion for those frosty winter mornings and cold winter nights.
The high quality, soft touch signature fleece material is super cosy and comes
in three winter colours. Signature, high quality Sherpa fleece fabric with
snow tipped finish Knee-"
image: "https://cdn.shopify.com/s/files/1/0408/3784/1060/products/0000_SAMANTH
A3FrontSQUARE_1200x1200.jpg?v=1633600564"
name: "Samantha - Bobble Fur Hooded Dressing Gown"
offers:
@type: "Offer"
price: "35.00"
priceCurrency: "GBP"
sku: "220-001-660-050-BAG"
Implementation
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Thank you!
@bethbarnham // @_libertydigital

More Related Content

PDF
Hreflang tags: everything you need to know to start implementing them
PPTX
Brighton SEO April 2022 - Automate the technical SEO stuff
PPTX
BrightonSEO - Master Crawl Budget Optimization for Enterprise Websites
PDF
SEO at Scale - BrightonSEO April 2022
PDF
Goodbye SEO fck ups! Learn to set an SEO Quality Assurance Framework
PPTX
Don't be a cannibal
PDF
Improving Crawling and Indexing using Real-Time Log File Insights
PPTX
How to be the ultimate double agent- PR and Link Builder Isa Lavahun BTNSEO S...
Hreflang tags: everything you need to know to start implementing them
Brighton SEO April 2022 - Automate the technical SEO stuff
BrightonSEO - Master Crawl Budget Optimization for Enterprise Websites
SEO at Scale - BrightonSEO April 2022
Goodbye SEO fck ups! Learn to set an SEO Quality Assurance Framework
Don't be a cannibal
Improving Crawling and Indexing using Real-Time Log File Insights
How to be the ultimate double agent- PR and Link Builder Isa Lavahun BTNSEO S...

What's hot (20)

PPTX
Brighton SEO - Luis Bueno Tabernero - How to do an ASO Audit like in the 90's...
PDF
How to Use Search Intent to Dominate Google Discover
PPTX
Why Scaling (Great) Content Is So Bloody Hard
PPTX
EAT: Have We Been Looking At It Backwards
PDF
The Hidden Gems of Low search volume
PDF
Martin McGarry - SEO strategy c/o England manager Gareth Southgate
PPTX
Product, service and category page links (and how to get them) - Rebecca Moss...
PDF
Using Search Intent in our Link Building Efforts
PPTX
The Quickest Win in SEO – How to do Internal Linking the Right Way
PDF
BrightonSEO - Apr 2022 - No excuses for doing UX
PPTX
SEO Reporting: Slay the Time-Sucking Monster and Deliver Amazing Reports
PPTX
The Full Scoop on Google's Title Rewrites
PDF
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
PDF
Agile SEO: Prioritise SEO Activities with Cadence and Risk Radius
PPTX
How to improve Core Web Vitals on a WordPress website
PPTX
How to go viral on a budget using Digital PR.pptx
PPTX
Freddy Krueger's Guide to Scary Good Reporting
PPTX
Holistic Search - Developing An Organic First Strategy
PDF
How to get more traffic with less content - BrightonSEO
PPTX
BrightonSEO - Amanda Jordan.pptx
Brighton SEO - Luis Bueno Tabernero - How to do an ASO Audit like in the 90's...
How to Use Search Intent to Dominate Google Discover
Why Scaling (Great) Content Is So Bloody Hard
EAT: Have We Been Looking At It Backwards
The Hidden Gems of Low search volume
Martin McGarry - SEO strategy c/o England manager Gareth Southgate
Product, service and category page links (and how to get them) - Rebecca Moss...
Using Search Intent in our Link Building Efforts
The Quickest Win in SEO – How to do Internal Linking the Right Way
BrightonSEO - Apr 2022 - No excuses for doing UX
SEO Reporting: Slay the Time-Sucking Monster and Deliver Amazing Reports
The Full Scoop on Google's Title Rewrites
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
Agile SEO: Prioritise SEO Activities with Cadence and Risk Radius
How to improve Core Web Vitals on a WordPress website
How to go viral on a budget using Digital PR.pptx
Freddy Krueger's Guide to Scary Good Reporting
Holistic Search - Developing An Organic First Strategy
How to get more traffic with less content - BrightonSEO
BrightonSEO - Amanda Jordan.pptx
Ad

Similar to Beth Barnham Schema Auditing BrightonSEO Slides.pptx (20)

PDF
WordCamp Chiclana 2020 Crea schemas sin plugins
PDF
GDI Seattle - Intro to JavaScript Class 4
PDF
Quick ref capybara
PDF
Quick ref capybara
PPTX
javascript.pptx
PDF
SDKs, the good the bad the ugly - Japan
KEY
Building & Breaking Web Forms with Quaid-JS
PDF
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
PDF
Building sustainable RESTFul services
PPTX
A Novel Approach to Scraping Websites - Rob Ousbey, MozCon 2020
PDF
Eve - REST API for Humans™
PDF
Web Forms People Don't Hate
PDF
EWD 3 Training Course Part 9: Complex QEWD Messages and Responses
PPTX
Working with Data and built-in functions of PHP
PDF
Constance et qualité du code dans une équipe - Rémi Prévost
PPT
Symfony2
PDF
Zensations Drupal 8 GraphQL Presentation 2015
ODP
Modern Web Development with Perl
PPT
KMUTNB - Internet Programming 4/7
PPTX
Accessibility, strategy and schema - do they go hand in hand? Beth Barnham Br...
WordCamp Chiclana 2020 Crea schemas sin plugins
GDI Seattle - Intro to JavaScript Class 4
Quick ref capybara
Quick ref capybara
javascript.pptx
SDKs, the good the bad the ugly - Japan
Building & Breaking Web Forms with Quaid-JS
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
Building sustainable RESTFul services
A Novel Approach to Scraping Websites - Rob Ousbey, MozCon 2020
Eve - REST API for Humans™
Web Forms People Don't Hate
EWD 3 Training Course Part 9: Complex QEWD Messages and Responses
Working with Data and built-in functions of PHP
Constance et qualité du code dans une équipe - Rémi Prévost
Symfony2
Zensations Drupal 8 GraphQL Presentation 2015
Modern Web Development with Perl
KMUTNB - Internet Programming 4/7
Accessibility, strategy and schema - do they go hand in hand? Beth Barnham Br...
Ad

Recently uploaded (20)

PDF
RC 14001 Certification: Enhancing ISO 14001 with EHS & Security Standards
PPTX
Ranking a Webpage with SEO (And Tracking It with the Right Attribution Type a...
PPTX
Tea and different types of tea in India
PDF
UNIT 1 -4 Profile of Rural Consumers (1).pdf
PPTX
Kimberly Crossland Storytelling Marketing Class 5stars.pptx
PPTX
Sumit Saxena IIM J Project Market segmentation.pptx
PDF
How the Minnesota Vikings Used Community to Drive 170% Growth and Acquire 34K...
PDF
PDF
Coleção Nature .
PDF
Pay-Per-Click Marketing: Strategies That Actually Work in 2025
PDF
UNIT 1 -3 Factors Influencing RURAL CONSUMER BEHAVIOUR.pdf
PPTX
Mastering eCommerce SEO: Strategies to Boost Traffic and Maximize Conversions
PDF
How a Travel Company Can Implement Content Marketing
PDF
Proven AI Visibility: From SEO Strategy To GEO Tactics
PDF
Prove and Prioritize Profitability in Every Marketing Campaign - Zach Sherrod...
PDF
Future Retail Disruption Trends and Observations
PDF
Wondershare Filmora Crack Free Download 2025
PDF
Hidden gems in Microsoft ads with Navah Hopkins
PDF
MARG’s Door & Window Hardware Catalogue | Trending Branding Digital Solutions
PPTX
Assignment 2 Task 1 - How Consumers Use Technology and Its Impact on Their Lives
RC 14001 Certification: Enhancing ISO 14001 with EHS & Security Standards
Ranking a Webpage with SEO (And Tracking It with the Right Attribution Type a...
Tea and different types of tea in India
UNIT 1 -4 Profile of Rural Consumers (1).pdf
Kimberly Crossland Storytelling Marketing Class 5stars.pptx
Sumit Saxena IIM J Project Market segmentation.pptx
How the Minnesota Vikings Used Community to Drive 170% Growth and Acquire 34K...
Coleção Nature .
Pay-Per-Click Marketing: Strategies That Actually Work in 2025
UNIT 1 -3 Factors Influencing RURAL CONSUMER BEHAVIOUR.pdf
Mastering eCommerce SEO: Strategies to Boost Traffic and Maximize Conversions
How a Travel Company Can Implement Content Marketing
Proven AI Visibility: From SEO Strategy To GEO Tactics
Prove and Prioritize Profitability in Every Marketing Campaign - Zach Sherrod...
Future Retail Disruption Trends and Observations
Wondershare Filmora Crack Free Download 2025
Hidden gems in Microsoft ads with Navah Hopkins
MARG’s Door & Window Hardware Catalogue | Trending Branding Digital Solutions
Assignment 2 Task 1 - How Consumers Use Technology and Its Impact on Their Lives

Beth Barnham Schema Auditing BrightonSEO Slides.pptx

Editor's Notes

  • #3: Hey everyone! My name is Beth Barnham, a Technical SEO Specialist at Liberty Marketing, Wales’ largest dedicated digital marketing agency. I’ve been in the world of digital marketing for around five years and found my love of SEO just over four years ago. I now specialise in technical SEO, and will be talking to you about schema, one of my favourite topics.
  • #4: What exactly is schema? Schema refers to a framework that helps organise and interpret information, it’s also referred to as structured data. It can take the form of a featured snippet to show more relevant, rich results for the specific search intent.
  • #5: It’s a framework to convert unstructured data to something easier to understand for search engines. It connects the dots between what it thinks you mean and what you actually mean as a searcher. Search engines are intuitive and intelligent and are made up of millions of algorithms and machine learning practices, so making it easier to decipher specific code on your website speeds up the process. Can be in various coding forms RDFa, microdata or JSON-LD Tells search engines the context of what you’re talking about
  • #6: Simply write, check, implement and leave to work its magic. Ping emails from search gallery for new versions Continuous improvements in Google Search Gallery Beta
  • #7: Helps to set targets within your strategy Schema is adaptable and customisable. It doesn’t matter what your niche is, there’s a type that will suit your audience Whatever is going on in the industry or economy you can signal to Google what’s happening with a piece of structured data
  • #8: As an SEO or digital marketer you don’t have to be technical and know lots of code. There’s loads of learning resources to aid whilst you write your own, and you can implement using a custom tag in GTM – of which we’ll explore further on
  • #10: What do you want to achieve? If it’s visibility you want to achieve then the blogPosting, Article, HowTo, Recipe types are all areas for content strategies which will increase visibility and feed into your keyword strategy
  • #11: If it’s conversions, then using types such as Event, JobPosting, Product to all meet the latest Google search gallery guidelines would be the most important element.
  • #12: If it’s for authority and trust, using Organization, LocalBusiness and linking your entity to other entities on the web is important to signal to search engines that your business is the same as other places on the web. These all help with natural language processing and showing Google the context of your page and how you want it to be categorized as. You’re essentially telling Google, oh hey, that’s me, yeah that’s me too, oh yeah I own that one as well. Google connects all the dots and increases your authority.
  • #13: https://www.searchenginewatch.com/2017/04/18/the-state-of-schema-org-what-are-the-biggest-challenges-surrounding-schema-markup/ But, as a marketer, why should you care? You’re busy, you have other targets, why does this need to affect me?
  • #14: It’s both reactive and proactive because you can react to news and use Article posting on there for example or proactive by using Product schema on new product pages.
  • #15: According to Search Engine Watch’s 2018 study, there is a 3x CTR increase when using structured data on your website https://www.searchenginewatch.com/2017/04/18/the-state-of-schema-org-what-are-the-biggest-challenges-surrounding-schema-markup/
  • #16: There’s a massive potential here with a major gap in the market for structured data on the SERPs, so this really is why you should care.
  • #17: How can we position the business differently to other businesses? Supports your E-A-T and content strategy, relates your website to other entities on the web Preparing for volatility or changes in the SERPs with a widely researched strategy is important Accessible
  • #18: Used in tandem with properties within the "Thing" Properties are within a “Thing”, nested within one another, with arrays and nests of JS properties
  • #19: Anything to describe an event such as theatreEvent, BusinessEvent, hackathon, live event, online event
  • #20: Anything to describe where a place is located, physical extension, address, covidtestingfacility was added during the pandemic when non-medical facilities turned medical Can also appear as jobLocation, serviceLocation
  • #21: Any person, fictional, non-fictional, useful for blogs featuring people, book reviews, mentions of the person to signal to Google you’re talking about the specific ‘character’
  • #22: Great for recipe websites
  • #23: Job opening, job description, salary, location, attendanceMode,
  • #24: Anything to depict an organization
  • #25: Schema hierarchy and how things sit within the properties
  • #26: Using event as an example to showcase the hierarchy and nested values within the event type
  • #27: They occur as textual property values
  • #28: Nested within is the businessEvent
  • #29: Or foodEvent
  • #30: Or PublicationEvent
  • #31: Then nested within that is the broadcast event describing how the event is shown
  • #32: Same applies to the OnDemandEvent
  • #34: For the PPC job at Liberty, it shows like this in Google Jobs portal
  • #35: Events show up
  • #37: How creative can your campaigns be? What FAQ pages do you have or can you create? What are the search trends?
  • #38: Keeping up to date with the news and trends, what can you use in your industry?
  • #39: You’ve probably all had enough of banana bread after 2020, but go with me, using this phrase
  • #40: There’s an average 17,000 monthly searches
  • #41: Looking at trends, we see a spike in March, April time of 2020
  • #42: That’s when the spike turned into 111,000 average searches, reactive if you’re a recipe site
  • #44: We know that people look at inspiration for their gardens on a seasonal basis. This usually starts around spring time, March, April so we can plan for blogs and HowTo content to support this
  • #45: Are there ‘evergreen’ topics that occur consistently in the news? What longtail phrases can be adapted for FAQs or QAs?
  • #46: Are there ‘evergreen’ topics that occur consistently in the news? What longtail phrases can be adapted for FAQs or QAs? For example how to make rice generally tend to stick to the same trend, no spikes, this is the bread and butter content for your site
  • #48: Initial checks Like any audit, we need to check what the current situation is with whats currently on the site This is great if you want to do page-by-page or if you only have a few pages to do
  • #49: But its suuuuuuuuuuuper slow to do it manually
  • #51: Bring out the Frog
  • #52: Configuration > spider
  • #54: Go to SF Configuration Extraction and ensure structured data checkboxes are all ticked
  • #55: Then run the crawl with those areas ticked Export the file via file export Save as all seo spider crawl types
  • #57: Then go to file > scheduling Click Add
  • #58: Create a task, in general tab select a ‘task name’, describe what the task is in description, schedule what day and time you want it to be, and how often, weekly, monthly etc.
  • #59: On tab 2, start options Select crawler mode as spider, Set the seed to the URL of the website And then select the crawl config of where you want the scheduled report to save Finally, in export, check Headless (this is essential to export via Gsheets) Select a local output folder, and select the Gdrive account You can opt to overdrive new files but I tend to keep them as new, timestamped Then ‘export for data studio’ custom crawl overview, this will allow the data to be manipulated in DS
  • #61: Then, go to DS and set up a new report, and select your crawl as your data source, and you can customise what you want to set up, for example, if you know the site only has JSON-LD URLs, you can ignore the RDFa tab. You can highlight or customise the errors tab if there are some here
  • #63: In the spreadsheet I’ve linked in the notes, we can paste in the HTML URLs from the crawl we just did, and the errors will auto populate, as well as the types (depending on how many there are) we can distinguish how many different types are on the page)
  • #64: The second tab includes a live list of all the available types directly from the search gallery You can then go through your URLs and decide whether they’re applicable or they meet the guidelines This is best done in correlation with the Rich Snippets Testing Tool and schema.org validator
  • #66: Writing using a text or code editor or use a generator such as JSON-LD playground
  • #68: ALWAYS test, at every single stage Validator, Rich snippets testing tool Search gallery
  • #69: Validator, Rich snippets testing tool Search gallery
  • #70: Product pages
  • #72: What we see here is the og_price variable which is set to pull the open graph title in Shopify. As this is usually set up to pull the variable of description, amount, currency, URL We are able to pull all of these areas using this bit of JavaScript automatically to populate the page
  • #74: When we run this, we always specify how we want the JSON to appear and in what format, this is a typical Product template
  • #76: And this is what we get back, all of those variables we wanted to be extracted from the previous page, we get a nicely populated piece of Product schema with the image, description, product name, image, price, currency, SKU
  • #78: To implement the Shopify example we can set up a Custom HTML tag in GTM, paste in the code from the following slides
  • #79: Set a trigger on page view on page URLs containing products
  • #80: Then for other, pre-written versions of schema we can create custom HTML tags in GTM to avoid using a developer
  • #81: The trigger for this localBusiness is on page view when the DOM is ready (because that’s when the page has finished loading) on the specific contact URL And this is how you get your audited site
  • #82: Thanks very much