Markdown

Report

What changed, and how long adoption takes

Google publishes a new usage file every month, and I keep a copy of each one. With three months archived I can start to see movement rather than only a snapshot. 136 terms ended these three months in a different band, and 131 of them moved up. That looks like adoption and some of it is not, which is the first thing worth understanding here. I also cover the two lists you are most likely to need here, the 87 terms Schema.org has replaced with something else, and the 22 the web already uses heavily before Schema.org has ratified them.

What moved between months

July 2026 · six ranges, no exact numbersGoogle and the Schema.org community, Schema.org usage statistics dataset. Websites in Google's index.

131 terms moved up a band and 5 moved down. Read as growth that would be remarkable, and you should not read it as growth. Google's counting settles for a while after a term appears, so some of what looks like a term spreading across the web is really Google's measurement of it catching up. I cannot separate the two from three months of band data, so I am telling you the number and the reason to distrust it at the same time.

Two terms crossed a band boundary and crossed back. customerRemorseReturnLabelSource and purchaseDate are counted as unstable rather than as movement in either direction, because a term that flickers across a boundary has not moved anywhere. That is why I count 136 terms that moved as 131 plus 5, and not the 138 rows in the table below.

Every term whose band differed in at least one of the three archived months, May 2026 to July 2026.
TermKindBand, May 2026Band, June 2026Band, July 2026
addressProperty1M - 10M10M+10M+
affiliationProperty10K - 100K10K - 100K100K - 1M
albumProductionTypeProperty< 1K1K - 10K1K - 10K
applicationCategoryProperty100K - 1M1M - 10M1M - 10M
applicationDeadlineProperty< 1K< 1K1K - 10K
ArticleClass1M - 10M1M - 10M10M+
artworkSurfaceProperty< 1K< 1K1K - 10K
AskActionClass< 1K< 1K1K - 10K
athleteProperty< 1K< 1K1K - 10K
AutoRentalClass1K - 10K10K - 100K10K - 100K
availabilityProperty1M - 10M10M+10M+
availabilityEndsProperty1K - 10K1K - 10K10K - 100K
availableChannelProperty10K - 100K100K - 1M100K - 1M
awardProperty10K - 100K10K - 100K100K - 1M
BarOrPubClass1K - 10K10K - 100K10K - 100K
bodyLocationProperty1K - 10K10K - 100K10K - 100K
broadcastOfEventProperty< 1K1K - 10K1K - 10K
businessFunctionProperty10K - 100K1M - 10M1M - 10M
BusTripClass< 1K< 1K1K - 10K
BuyActionClass10K - 100K1M - 10M1M - 10M
CasinoClass10K - 100K100K - 1M100K - 1M
CertificationClass1K - 10K10K - 100K10K - 100K
certificationStatusProperty< 1K1K - 10K1K - 10K
characterProperty< 1K1K - 10K1K - 10K
ChemicalSubstanceClass< 1K< 1K1K - 10K
coachProperty< 1K< 1K1K - 10K
ComedyEventClass< 1K1K - 10K1K - 10K
competitorProperty1K - 10K1K - 10K10K - 100K
containedInProperty1K - 10K10K - 100K10K - 100K
contentTypeProperty1K - 10K10K - 100K10K - 100K
contraindicationProperty< 1K1K - 10K1K - 10K
CourseClass10K - 100K100K - 1M100K - 1M
courseCodeProperty1K - 10K10K - 100K10K - 100K
creditTextProperty10K - 100K100K - 1M100K - 1M
datasetProperty< 1K1K - 10K1K - 10K
deliveryMethodProperty10K - 100K100K - 1M100K - 1M
DeliveryMethodClass< 1K1K - 10K1K - 10K
dependenciesProperty1K - 10K1K - 10K10K - 100K
DermatologyClass< 1K1K - 10K1K - 10K
DurationClass1K - 10K10K - 100K10K - 100K
EducationalOccupationalCredentialClass10K - 100K10K - 100K100K - 1M
eduQuestionTypeProperty< 1K1K - 10K1K - 10K
eligibleQuantityProperty10K - 100K10K - 100K100K - 1M
epidemiologyProperty< 1K< 1K1K - 10K
fileSizeProperty10K - 100K10K - 100K100K - 1M
FindActionClass< 1K< 1K1K - 10K
foundingDateProperty100K - 1M1M - 10M1M - 10M
foundingLocationProperty10K - 100K100K - 1M100K - 1M
fuelEfficiencyProperty1K - 10K10K - 100K10K - 100K
funderProperty1K - 10K10K - 100K10K - 100K
gameItemProperty1K - 10K10K - 100K10K - 100K
hasCertificationProperty1K - 10K1K - 10K10K - 100K
hasCredentialProperty10K - 100K100K - 1M100K - 1M
hasDefinedTermProperty1K - 10K10K - 100K10K - 100K
hasTierBenefitProperty< 1K1K - 10K1K - 10K
hasTiersProperty< 1K1K - 10K1K - 10K
HotelClass10K - 100K10K - 100K100K - 1M
howPerformedProperty1K - 10K1K - 10K10K - 100K
icaoCodeProperty< 1K1K - 10K1K - 10K
inProductGroupWithIDProperty1K - 10K10K - 100K10K - 100K
installUrlProperty10K - 100K100K - 1M100K - 1M
isSimilarToProperty1K - 10K1K - 10K10K - 100K
isVariantOfProperty1K - 10K10K - 100K10K - 100K
jobTitleProperty100K - 1M1M - 10M1M - 10M
jurisdictionProperty< 1K1K - 10K1K - 10K
knowsLanguageProperty10K - 100K100K - 1M100K - 1M
legislationIdentifierProperty< 1K1K - 10K1K - 10K
legislationTypeProperty< 1K< 1K1K - 10K
MedicalAudienceClass1K - 10K10K - 100K10K - 100K
MedicalBusinessClass10K - 100K10K - 100K100K - 1M
MedicalGuidelineClass< 1K< 1K1K - 10K
medicalSpecialtyProperty10K - 100K100K - 1M100K - 1M
memberOfProperty10K - 100K10K - 100K100K - 1M
membershipPointsEarnedProperty< 1K< 1K1K - 10K
menuAddOnProperty1K - 10K10K - 100K10K - 100K
MerchantReturnPolicySeasonalOverrideClass< 1K1K - 10K1K - 10K
MessageClass< 1K1K - 10K1K - 10K
MobileApplicationClass10K - 100K100K - 1M100K - 1M
numberOfAxlesProperty< 1K< 1K1K - 10K
numberOfBedroomsProperty10K - 100K10K - 100K100K - 1M
numberOfEpisodesProperty1K - 10K10K - 100K10K - 100K
OfferClass1M - 10M10M+10M+
offerCountProperty100K - 1M1M - 10M1M - 10M
offersProperty1M - 10M10M+10M+
operatingSystemProperty100K - 1M1M - 10M1M - 10M
OrderClass< 1K1K - 10K1K - 10K
parentProperty< 1K1K - 10K1K - 10K
percentile25Property< 1K1K - 10K1K - 10K
percentile75Property< 1K1K - 10K1K - 10K
performersProperty1K - 10K10K - 100K10K - 100K
performTimeProperty1K - 10K1K - 10K10K - 100K
playerTypeProperty1K - 10K1K - 10K10K - 100K
polygonProperty< 1K1K - 10K1K - 10K
PostalAddressClass1M - 10M10M+10M+
practicesAtProperty< 1K1K - 10K1K - 10K
priceProperty1M - 10M10M+10M+
priceCurrencyProperty1M - 10M10M+10M+
ProductClass1M - 10M10M+10M+
ProfilePageClass100K - 1M1M - 10M1M - 10M
providerProperty100K - 1M1M - 10M1M - 10M
questionProperty< 1K< 1K1K - 10K
referenceQuantityProperty10K - 100K1M - 10M1M - 10M
regionsAllowedProperty1K - 10K10K - 100K10K - 100K
RegisterActionClass1K - 10K1K - 10K10K - 100K
relevantSpecialtyProperty1K - 10K1K - 10K10K - 100K
SchoolClass1K - 10K1K - 10K10K - 100K
ScreeningEventClass< 1K1K - 10K1K - 10K
seasonProperty< 1K1K - 10K1K - 10K
SelfStorageClass1K - 10K10K - 100K10K - 100K
ServiceChannelClass10K - 100K100K - 1M100K - 1M
serviceTypeProperty100K - 1M100K - 1M1M - 10M
SoftwareApplicationClass100K - 1M100K - 1M1M - 10M
specialCommitmentsProperty< 1K1K - 10K1K - 10K
spokenByCharacterProperty< 1K1K - 10K1K - 10K
SurgicalProcedureClass< 1K1K - 10K1K - 10K
taxIDProperty10K - 100K100K - 1M100K - 1M
TaxiServiceClass1K - 10K1K - 10K10K - 100K
totalJobOpeningsProperty< 1K< 1K1K - 10K
TrainStationClass< 1K1K - 10K1K - 10K
transcriptProperty10K - 100K10K - 100K100K - 1M
TypeAndQuantityNodeClass< 1K< 1K1K - 10K
typicalTestProperty< 1K1K - 10K1K - 10K
unitCodeProperty100K - 1M1M - 10M1M - 10M
validUntilProperty< 1K1K - 10K1K - 10K
variesByProperty10K - 100K100K - 1M100K - 1M
versionProperty1K - 10K1K - 10K10K - 100K
VideoGameSeriesClass< 1K1K - 10K1K - 10K
warningProperty< 1K< 1K1K - 10K
WatchActionClass10K - 100K100K - 1M100K - 1M
webFeedProperty1K - 10K10K - 100K10K - 100K
workTranslationProperty1K - 10K10K - 100K10K - 100K
LiveBlogPostingClass10K - 100K1K - 10K1K - 10K
mastheadProperty10K - 100K1K - 10K1K - 10K
paymentMethodTypeProperty1K - 10K1K - 10K< 1K
PlayActionClass10K - 100K10K - 100K1K - 10K
RadioEpisodeClass1K - 10K1K - 10K< 1K
customerRemorseReturnLabelSourceProperty< 1K1K - 10K< 1K
purchaseDateProperty1K - 10K< 1K1K - 10K

Terms Schema.org has replaced

87 terms in Google's file have been superseded, and every one of them has a documented replacement. 12 are still on ten thousand websites or more, so this is not a list of terms nobody touched. If you are using one of them, the table below tells you what to use instead.

Two of those replacements have themselves been replaced, because area points at serviceArea, which itself points at areaServed, and seasons points at season, which itself points at containsSeason. Where a replacement has its own row here, the table links to it, so you can follow a chain to its end rather than stopping one step short and marking up a term that is also on its way out.

All 87 superseded terms in Google's usage file, with the replacement Schema.org documents for each one.
TermKindBandReplaced by
interactionCountProperty100K - 1MinteractionStatistic
blogPostsProperty10K - 100KblogPost
branchOfProperty10K - 100KparentOrganization
containedInProperty10K - 100KcontainedInPlace
fileFormatProperty10K - 100KencodingFormat
foundersProperty10K - 100Kfounder
languageProperty10K - 100KinLanguage
menuProperty10K - 100KhasMenu
performersProperty10K - 100Kperformer
photosProperty10K - 100Kphoto
serviceAreaProperty10K - 100KareaServed
UserCommentsClass10K - 100KInteractionCounter
actorsProperty1K - 10Kactor
areaProperty1K - 10KserviceArea
awardsProperty1K - 10Kaward
benefitsProperty1K - 10KjobBenefits
employeesProperty1K - 10Kemployee
eventsProperty1K - 10Kevent
freeProperty1K - 10KisAccessibleForFree
ingredientsProperty1K - 10KrecipeIngredient
mapProperty1K - 10KhasMap
mapsProperty1K - 10KhasMap
requirementsProperty1K - 10KsoftwareRequirements
reviewsProperty1K - 10Kreview
seasonProperty1K - 10KcontainsSeason
serviceAudienceProperty1K - 10Kaudience
UserCheckinsClass1K - 10KInteractionCounter
albumsProperty< 1Kalbum
applicationProperty< 1KactionApplication
aspectProperty< 1KmainContentOfPage
assemblyProperty< 1KexecutableLibraryName
attendeesProperty< 1Kattendee
bookingAgentProperty< 1Kbroker
branchProperty< 1KarterialBranch
carrierProperty< 1Kprovider
catalogProperty< 1KincludedInDataCatalog
clincalPharmacologyProperty< 1KclinicalPharmacology
CodeClass< 1KSoftwareSourceCode
colleaguesProperty< 1Kcolleague
collectionProperty< 1KtargetCollection
contactPointsProperty< 1KcontactPoint
courseProperty< 1KexerciseCourse
datasetTimeIntervalProperty< 1KtemporalCoverage
DatedMoneySpecificationClass< 1KMonetaryAmount
DeliveryTimeSettingsClass< 1KShippingConditions
deviceProperty< 1KavailableOnDevice
directorsProperty< 1Kdirector
encodingsProperty< 1Kencoding
episodesProperty< 1Kepisode
hasProductReturnPolicyProperty< 1KhasMerchantReturnPolicy
incentivesProperty< 1KincentiveCompensation
includedDataCatalogProperty< 1KincludedInDataCatalog
isBasedOnUrlProperty< 1KisBasedOn
membersProperty< 1Kmember
merchantProperty< 1Kseller
musicGroupMemberProperty< 1Kmember
namedPositionProperty< 1KroleName
optionProperty< 1KactionOption
parentsProperty< 1Kparent
partOfTVSeriesProperty< 1KpartOfSeries
paymentDueProperty< 1KpaymentDueDate
producesProperty< 1KserviceOutput
productReturnDaysProperty< 1KmerchantReturnDays
ProductReturnEnumerationClass< 1KMerchantReturnEnumeration
ProductReturnPolicyClass< 1KMerchantReturnPolicy
runtimeProperty< 1KruntimePlatform
sampleTypeProperty< 1KcodeSampleType
SeasonClass< 1KCreativeWorkSeason
seasonsProperty< 1Kseason
siblingsProperty< 1Ksibling
stepsProperty< 1Kstep
subEventsProperty< 1KsubEvent
surfaceProperty< 1KartworkSurface
TaxiClass< 1KTaxiService
tracksProperty< 1Ktrack
UserBlocksClass< 1KInteractionCounter
UserDownloadsClass< 1KInteractionCounter
UserInteractionClass< 1KInteractionCounter
UserLikesClass< 1KInteractionCounter
UserPageVisitsClass< 1KInteractionCounter
UserPlaysClass< 1KInteractionCounter
UserPlusOnesClass< 1KInteractionCounter
UserTweetsClass< 1KInteractionCounter
vendorProperty< 1Kseller
warrantyPromiseProperty< 1Kwarranty

Terms the web uses before Schema.org ratifies them

22 terms sit in Schema.org's pending section, which means the vocabulary has published them for use without yet folding them into a numbered release, and every one of them is already on a hundred thousand websites or more. Most of them are retail, and specifically returns and product variants, which is the same signal the recommended gap report finds from the other direction.

Schema.org itself describes the pending section as "a staging area for work-in-progress terms which have yet to be accepted into the core vocabulary", and it warns that "pending terms are subject to change and should be used with caution". You can read the whole description at Schema.org's own documentation for the pending section.

What this means for you is a judgement rather than a rule. A pending term being widely implemented makes it a reasonable choice rather than an exotic one, and being unratified means it is not settled.

All 22 terms in Schema.org's pending section already on 100,000 websites or more.
TermBand
applicableCountry100K - 1M
creditText100K - 1M
EducationalOccupationalCredential100K - 1M
eventAttendanceMode100K - 1M
gtin100K - 1M
hasCredential100K - 1M
hasMerchantReturnPolicy100K - 1M
hasVariant100K - 1M
jobTitle1M - 10M
knowsAbout100K - 1M
knowsLanguage100K - 1M
merchantReturnDays100K - 1M
MerchantReturnPolicy100K - 1M
numberOfBedrooms100K - 1M
OnlineStore100K - 1M
ProductGroup100K - 1M
productGroupID100K - 1M
provider1M - 10M
returnFees100K - 1M
returnMethod100K - 1M
returnPolicyCategory100K - 1M
variesBy100K - 1M

How long a term waits to be used

11 August 2026 · datesSchema.org dated release snapshots. Not a measurement of the web.

Built from the 877 terms whose invention date can be traced to a dated Schema.org release. 1,610 terms are left out because they were already present in release 2.0, published on 13 May 2015, which is the floor of my archive rather than their true age.

Not one datable term has reached the top band, and only two have passed a million websites. Every term the whole web uses was already in the vocabulary before my archive starts, which is exactly why 1,610 terms have no date. So I can date about a third of the vocabulary here, 877 of 2,487 real terms, and the other two thirds stay undated, which is the shape of the archive rather than a fact about adoption.

The 877 datable terms, by year of invention and by the usage band each sits in today.
Year< 1K1K - 10K10K - 100K100K - 1M1M - 10M10M+Total
2015342913110087
2016602928610124
2017682728700130
201812171341047
2019552516600102
20209438171900168
20216616510088
2022102320017
2023134200019
2024189200029
2025498500062
20263010004
All4822041335620877

Where terms get stuck

July 2026 · six ranges, no exact numbersGoogle and the Schema.org community, Schema.org usage statistics dataset. Websites in Google's index.

A term that was already on a thousand websites or more was about 1.6 times more likely to climb a band across the archived months than a term below a thousand, 6.63% against 4.06%. What you should take from this is that adoption compounds, because a term with existing implementations has examples to copy, documentation written about it and tooling that already emits it, and a term with almost none has none of that.

The bottom band has no floor, and some of what you are reading is that shape. Four of the five bands above it span a single factor of ten. The top one is open-ended, and it is excluded here because a term in it has nowhere to climb. The band under a thousand sites runs down from zero and holds terms almost nobody uses, some of which could not cross a thousand sites in three months whatever happened. So part of this gap is the shape of the bands rather than a difference in adoption, and we cannot separate the two from band data alone.

Two more considerations bound this comparison. Three archived months is a short window, and the web itself keeps growing underneath it, so some of the movement inside any group reflects the whole vocabulary drifting upward rather than a single term catching on.

The 2,487 real terms, grouped by where they started, how many climbed a band, and the rate.
GroupTermsClimbedRate
Started below 1,000 sites1,208494.06%
Started between 1,000 and 10,000,000 sites1,237826.63%
Started in the top band420Excluded, nowhere to climb
All2,487131

How this is measured

Every month Google publishes a file counting how many websites in its index use each Schema.org term, and every month I archive a copy. Every figure here is rebuilt from that archive rather than from a live download, so any number on this page traces back to the month it came from. Google publishes six bands and never the figure inside one, so a term you can see on somewhere between one and ten million websites has no public exact number, here or anywhere.

Movement means a term's band changed between the archived months and stayed changed. As the archive grows across more months, this comparison becomes more reliable.

The invention dates come from Schema.org's own dated releases rather than from Google's file, which carries no dates at all. That is a different source measuring a different thing, so it sits in its own section here with its own figures and is never combined with a usage band into one number.

You can download the same figures as JSON or CSV, and the migration table's rows, term by term, as explorer.json. Check any number on this page against whichever of the three actually carries it.

Snapshot July 2026. 3 months archived. Built 18 August 2026.

Analysis © Eduard Dziak, licensed under the Apache License 2.0. Please credit eduarddziak.com with a link. Source data: Google and the Schema.org community, Schema.org usage statistics dataset. Rich result requirements: Google Search Central, licensed CC BY 4.0. Term descriptions: Schema.org, licensed CC BY-SA 3.0, each term linking to its own page. Crawl counts: HTTP Archive Web Almanac, licensed Apache License 2.0.