Skip to main content
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
Scale
Crawling
Configuration
>
Extraction
>
Structured Data
Run the crawl
>
File > Export
Scheduling
Analysing the
Audit
Writing
@bethbarnham
• Use a text or code editor
• Write using JSON, RDFa, microdata
• Templates available online
• Practice, test
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
Thank you!
@bethbarnham // @_libertydigital