Breadcrumb
P ≥ 99.7%BreadcrumbList + ListItem
Recovered in every month at a conditional probability of at least 99.7% in both directions.
WLDM AI Research Lab Working paper CC-MAIN-2026-04 to 2026-30 September 2026
A seven-month analysis of structured data across 14.78 billion web pages
Schema.org markup has become the primary vocabulary through which the open web declares machine-readable structure, yet public reporting on its aggregate shape at web scale remains limited. This paper presents a seven-month empirical study of schema.org usage across all Common Crawl monthly snapshots from January 2026 through July 2026, covering 14,784,536,534 pages and 127,990,580,002 individual type occurrences.
Across the combined corpus, 58.32% of pages carry schema markup as a weighted mean. Coverage rises from 55.27% in the lowest month, February, to 60.05% in the highest, July, monotonically from March onward. Vocabulary usage is concentrated to a degree that decays faster than pure Zipf: the top 100 types account for approximately 98% of all instances, while more than 62% of distinct types appear only once. A stratified sample-based format analysis shows JSON-LD page share growing from 74.53% to 77.84% and microdata share falling from 49.40% to 45.14% across the period, monotonically each month. Implementation errors form a stable shadow layer at 0.63% of all occurrences. Seven co-occurrence templates are recovered every month at conditional probabilities above 87%. A full-corpus Wikidata linking scan finds 5,382,130 pages, 0.261% of all pages, carrying at least one Wikidata QID reference.
Weighted mean coverage of the 14,784,536,534 pages examined, rising from 55.27% in February to 60.05% in July. 8,620,770,647 pages carry at least one schema.org type.
Of type occurrences are captured by the top 100 types, measured on the June 2026 crawl as the representative month. Across the seven-month corpus of 127,990,580,002 occurrences the shape is essentially unchanged.
Shadow layer of implementation errors: 811,946,273 occurrences a conforming parser would reject. Property-as-type and casing mistakes alone are 92.5% of it.
01. Corpus
The corpus consists of every monthly Common Crawl snapshot released in the first seven months of 2026: CC-MAIN-2026-04 (January), 08 (February), 12 (March), 17 (April), 21 (May), 25 (June) and 30 (July). Each crawl contains 100,000 WARC files. Across the seven months, 700,000 WARC files were processed successfully. 127 files in the March crawl returned S3 throttling errors and were treated as zero-page entries in per-file statistics but excluded from coverage histograms.
| Metric | Seven-month total |
|---|---|
| Pages processed | 14,784,536,534 |
| Pages with schema markup | 8,620,770,647 |
| Total type occurrences | 127,990,580,002 |
| Weighted mean coverage | 58.32% |
| Weighted mean density | 14.84 |
| WARC files processed | 700,000 |
| Total compute cost | $368 |
Table 1. Cumulative totals across the seven-month corpus (CC-MAIN-2026-04 through CC-MAIN-2026-30). Coverage is the percentage of pages carrying at least one recognised schema.org type. Density is the mean number of distinct type instances per schema-bearing page.
wldm-schema-extraction-cc-2026-* naming scheme.02. Coverage
Weighted mean coverage across the full corpus is 58.32%. Per-month coverage rises monotonically from a low of 55.27% in February to a high of 60.05% in July, an increase of 4.78 percentage points over the seven months. January registers 57.31%, then February dips to 55.27% before the monthly figure rises through March (57.69%), April (59.00%), May (59.19%), June (59.73%) and July (60.05%). The February dip is a real crawl-composition effect rather than a data-quality artefact: the aggregation was re-run against the raw per-file logs to confirm no error mass was hidden.
Per-file variance is remarkably tight. The standard deviation of coverage across the 100,000 WARC files of each month is below 1.25 percentage points in every month, and below 0.75 percentage points in five of the seven. Distinct-type counts per WARC file cluster around a weighted mean of 509 with a standard deviation of approximately 21 in each month. This uniformity implies that the underlying phenomenon, which pages carry schema markup and how many types they carry, does not depend strongly on which subset of the crawl is sampled.
58.32%
weighted mean coverage, seven months
+4.78pp
February low to July high
<1.25pp
coverage standard deviation across WARC files, every month
~509
distinct types per WARC file (SD ~21)
03. Distribution shape
Vocabulary usage is extremely concentrated. Table 2 gives the cumulative percentage of total occurrences accounted for by the top N types, using the June 2026 crawl as a representative month; the shape is essentially unchanged in every other month. A single type, ListItem, accounts for approximately one in every six occurrences in every month examined, between 16.67% and 17.05%.
| Top N types | Occurrences | % of all hits |
|---|---|---|
| 1 | 3,104,312,299 | 16.74% |
| 5 | 7,877,813,237 | 42.47% |
| 10 | 11,463,617,419 | 61.80% |
| 20 | 14,310,372,675 | 77.15% |
| 50 | 17,420,794,254 | 93.91% |
| 100 | 18,154,304,308 | 97.87% |
| 500 | 18,520,815,653 | 99.84% |
| 1000 | 18,541,490,623 | 99.96% |
The long tail is correspondingly heavy. In each month, more than 62% of distinct types are singletons, appearing exactly once. In January the singleton share peaks at 64.9%, 114,765 out of 176,912 distinct types. Types appearing 10 times or fewer account for approximately 85% to 90% of distinct types in every month, and types appearing 100 times or fewer for approximately 95%.
| Rank | Frequency | Rank × frequency |
|---|---|---|
| 1 | 3,104,312,299 | 3.10 × 109 |
| 10 | 517,005,418 | 5.17 × 109 |
| 100 | 4,901,007 | 4.90 × 108 |
| 1,000 | 13,744 | 1.37 × 107 |
| 10,000 | 46 | 4.60 × 105 |
| 100,000 | 1 | 1.00 × 105 |
@type slot, typically from non-schema.org vocabularies such as purl.org/goodrelations, microformats.org and w3.org/2001/XMLSchema, or from confused implementations. Approximately 10% to 15% are foreign-language content strings: Bengali, Russian, Japanese, Portuguese, Spanish, Georgian, Thai, Arabic, Greek, German and Vietnamese all appear in the sampled singletons. Article titles or product names, custom vocabularies (TreePruningAndRemovalCompany, FinancialPlan, BreakfastService), version-suffixed real types (EntryPoint 1.20.3), typos of real types, and complete garbage or word fragments make up the remainder. The long tail is therefore a noise floor rather than a genuine vocabulary long tail.04. Category composition
Grouping the top 200 types per month into ten fixed categories yields a picture that is stable across all seven months: no category shifts by more than 3.1 percentage points across the window, and the overall shape is dominated by structural markup. Navigation and Structure sits between 43.5% and 46.6% of top-200 occurrences across the seven months, with a slight downward trend from 46.6% in January to 43.5% in July. It is populated overwhelmingly by ListItem, BreadcrumbList, SiteNavigationElement, WebPage and WebSite.
Content and Media sits stably at approximately 18%, driven by ImageObject at 1.6 to 2.0 billion occurrences per month, Article and blogging types. E-commerce (Offer, Product, Brand, Rating, Review) rises slightly across the seven-month period, from 11.2% to 12.6%, consistent with growing commercial schema adoption. Places and Geo rises from 5.2% to 6.2% over the same period. Events and Actions, Interaction and Social, Vehicles, and Technology and Software collectively contribute less than 1.5% of top-200 occurrences in every month. This is not because the underlying types are rare in absolute terms, since Vehicles alone accounts for tens of millions of occurrences per month, but because they are dwarfed by the structural and content categories.
05. Format evolution
The stratified 200-WARC per-month sample shows a consistent, monotonic migration from microdata toward JSON-LD across the seven-month period. JSON-LD page share rises from 74.53% in January to 77.84% in July, a gain of 3.31 percentage points. Microdata page share falls from 49.40% to 45.14% over the same period, a loss of 4.26 percentage points. Both directions are monotonic: every month shows JSON-LD ticking up and microdata ticking down relative to the prior month.
The overlap between the two, that is, the percentage of pages carrying both formats, is stable throughout at approximately 23% to 24%: 22.98% in July, 23.95% in May, 23.93% in January. The migration is not therefore a matter of dual-format pages dropping one; it is microdata-only pages converting to JSON-LD or being replaced with JSON-LD-only equivalents. The shift is more pronounced when measured by occurrences rather than pages: JSON-LD's share of total type occurrences rises from 70.49% in January to 75.66% in July, meaning JSON-LD-carrying pages are becoming denser in type occurrences relative to microdata pages as well as more numerous.
06. Shadow layer
Combining the four error categories yields a stable shadow layer representing invalid or non-conforming markup. It represents 0.63% of all type occurrences across the seven-month corpus: 811,946,273 out of 127,990,580,002. The per-month share ranges from 0.58% in July to 0.67% in January, a spread of 0.09 percentage points. No month exceeds the 0.5-percentage-point variance threshold from the mean, and there is a weak but consistent downward trend consistent with improving implementation quality over time.
| Error category | Seven-month total | % of shadow |
|---|---|---|
| Property-as-type | 399,653,859 | 49.2% |
| Casing duplicates | 351,673,905 | 43.3% |
| URL-as-type | 42,691,296 | 5.3% |
| Malformed strings | 17,927,213 | 2.2% |
| Total shadow layer | 811,946,273 | 100% |
@type slot: mainEntityOfPage, dateModified, itemPage, organization, offer@type slotProperty-as-type errors are the largest single category at 49.2% of the shadow layer. Because JSON property casing conventionally begins with a lowercase letter and schema.org type casing conventionally begins with uppercase, this error is easily detectable and has a clear rewriting fix. Two error patterns emerged as high-frequency in July that had not been present at that scale in earlier months: ImageObject with a zero substituted for the letter O, at approximately 5.6 million occurrences, and http//schema.org/Review missing the colon in the URL scheme, at approximately 202 thousand occurrences. Both appear to have propagated through a single templating library or CMS plugin update.
07. Co-occurrence templates
Co-occurrence is measured on a stratified sample of 10 WARC files per month, on the schema-bearing pages within them, approximately 115,000 pages per month. For each ordered pair of types (A, B) the analysis computes P(B | A) and P(A | B) by counting the pages on which each type appears. Highly correlated pairs are those where both conditionals exceed 80%; asymmetric pairs are those where P(B | A) is at least 90% but P(A | B) is below 40%. Every month yields the same seven templates, at conditional probabilities above 87%.
BreadcrumbList + ListItem
Recovered in every month at a conditional probability of at least 99.7% in both directions.
FAQPage + Question + Answer
Recovered in every month at a conditional probability of at least 97%.
Product + Offer
Recovered in every month at 87% to 91% in both directions.
Product + Offer + OfferShippingDetails + MerchantReturnPolicy + DefinedRegion
The shipping-details and return-policy types are asymmetric riders that almost always require the product-offer pair. The DefinedRegion and OfferShippingDetails symmetric pair dropped below the 80%/80% threshold in April, then recovered above it in subsequent months.
WebSite + SearchAction + EntryPoint + PropertyValueSpecification
Recovered in every month at a conditional probability of at least 99%.
PostalAddress + GeoCoordinates + Organization
Recovered in every month at 92.4% to 94.2%.
Article + Person + Organization + ImageObject
Recovered as an asymmetric cluster in every month.
Figure 6. Seven co-occurrence templates. All seven hold across all seven months at the thresholds shown; no template fell below the 80%/80% symmetric threshold in any month for its core pair. Node colour marks the functional category, and neutral nodes mark rider types.
08. Wikidata linking
A separate full-corpus scan of the June 2026 crawl (CC-MAIN-2026-25) only was run to measure how often schema.org markup carries a link to a Wikidata entity via the sameAs, mainEntity, mainEntityOfPage or @id property. The run examined 2,065,085,607 pages across 100,000 WARC files. Only 0.261% of all pages, about one in every 384, carry a Wikidata reference. Among schema-bearing pages the rate is higher but still small.
| Metric | Value |
|---|---|
| Pages scanned | 2,065,085,607 |
| Pages with Wikidata links | 5,382,130 |
| Wikidata rate | 0.261% of all pages |
| Unique Wikidata QIDs | 1,181,408 |
| Total QID occurrences | 12,468,148 |
This finding matters because Wikidata linking is the most direct signal that a page is not just marking up its own content, but is grounding the entities on that page in a shared, resolvable knowledge base. QID concentration is heavy but less extreme than schema.org type concentration: the top 1 QID accounts for 1.06% of QID occurrences, the top 100 for 18.86%, the top 1,000 for 40.75% and the top 10,000 for 62.48%.
| Entity | QID | Occurrences |
|---|---|---|
| Apple Books | Q284115 | 132,632 |
| Apple TV | Q270285 | 122,282 |
| Xataka | Q110313255 | 83,467 |
sameAs property, the correct usage, rather than mainEntity or @id: in the smaller 200-file sample run, sameAs accounted for 4,058 of 5,344 property-hit instances, or 76%.09. Comparison
Google's Schema.org Usage Statistics Dataset, released June 2026, reports the number of distinct root domains observed to use each schema.org type. This study reports the number of instance occurrences. These are two orthogonal signals: a type used ten million times on a handful of large sites will rank high in this study and low in Google's, while a type used a handful of times on a million sites will rank the opposite way.
The two signals nonetheless broadly agree on which schema.org types are most prominent. Spearman rank correlation on the top 100 types is 0.86, using instance ranking as one signal and domain ranking as the other. Types such as Organization, WebSite, WebPage, BreadcrumbList, ImageObject, Person and ListItem appear in the top tier of both rankings. The disagreements are informative: types associated with a small number of very high-traffic sites, for example template-heavy SiteNavigationElement usage, rank higher on instance volume than on domain breadth, while types associated with wide but shallow adoption rank higher on domain breadth than on instance volume.
0.86
Spearman rank correlation with Google's dataset, top 100 types
132,525
distinct schema-bearing domains, January 2026
193,179
distinct schema-bearing domains, July 2026
+45.8%
growth in schema-bearing domains across the period
The domain-level analysis, a stratified sample of 500 WARC files per month, shows a 45.8% increase in distinct schema-bearing domains from January (132,525) to July (193,179), and confirms that the top seven types by domain breadth (ListItem, Organization, BreadcrumbList, ImageObject, Person, WebPage, WebSite) are the same in every month and match Google's highest domain-breadth tier exactly. From March 2026 onward, Offer and Product enter the top 10 by domain count, an e-commerce adoption signal that is visible in domain breadth before it fully registers in instance volume.
10. Method
Every monthly Common Crawl snapshot released in the first seven months of 2026, CC-MAIN-2026-04 through CC-MAIN-2026-30. Each crawl contains 100,000 WARC files; 700,000 were processed successfully. 127 files in the March crawl returned S3 throttling errors and were excluded from coverage histograms.
WARC files were streamed from Common Crawl's public S3 bucket into a fleet of 200 spot compute instances. Each page's HTML was parsed with two independent extractors, one for JSON-LD blocks and one for microdata.
Every extracted @type value was normalised to strip surrounding whitespace, the prefixes http://schema.org/ and https://schema.org/, and enclosing quotation marks. Casing was preserved rather than folded, so that casing duplicates could be measured downstream.
Every month produces exactly the same six analyses in exactly the same order, so that data from different months can be combined mathematically without ambiguity: distribution shape, long-tail composition, category grouping, error patterns, per-file variance and co-occurrence.
Coverage is the percentage of pages carrying at least one recognised schema.org type. Density is the mean number of distinct type instances per schema-bearing page. The category grouping uses a fixed ten-category map applied only to the top 200 types by frequency in each month, since the long tail contains too many idiosyncratic strings to categorise reliably.
Some metrics can be summed across months: total pages, pages with schema, total occurrences of a specific type, total occurrences in a specific error category. Some can only be weighted-averaged, with pages processed as the weight: coverage percentage, density, distinct types per WARC. Some are per-month only: top-N rankings, category percentages and co-occurrence conditional probabilities. Every combined view reported here follows these rules.
The JSON-LD versus microdata format split is computed from a stratified random sample of 200 WARC files per month, evenly spaced across the 100,000 path indices, with a fixed random seed of 42, approximately 1,000,000 pages per month. The domain-level analysis uses a stratified sample of 500 WARC files per month, again with seed 42, approximately 0.5% of the corpus.
Total compute across the seven months amounted to approximately 38 wall-clock hours of extraction and roughly $368 in aggregate. All source data is public. Aggregated per-crawl outputs are retained in Common Crawl-aligned S3 buckets under the wldm-schema-extraction-cc-2026-* naming scheme to support future reproduction and extension.
11. Limitations
Common Crawl has known coverage biases: it under-represents behind-login content, some very large sites limit its access, and it is not uniform in its geographic or linguistic coverage. Our findings should be read as "schema.org markup on the crawlable open web" rather than "schema.org markup on the web".
They rest on 200 and 500 WARC files per month respectively rather than the full corpus. The samples are stratified, evenly spaced, and use a fixed random seed, and per-file uniformity in the full-corpus analyses gives us confidence that the sample-based figures are representative. Nonetheless the format-split percentages carry sampling uncertainty that the full-corpus figures do not.
Cite this paper
Moreau, B., Sejfula, I., Shah, T. (2026). The Shape of Schema.org at Scale: A Seven-Month Analysis of Structured Data Across 14.78 Billion Web Pages. Working paper, WLDM AI Research Lab. https://wldm.io/research/schema-org-at-scale/
12. References
Common Crawl: An open repository of web crawl data. Accessed September 2026. commoncrawl.org
Schema.org: A collaborative, community activity with a mission to create, maintain, and promote schemas for structured data on the Internet. Accessed September 2026. schema.org
Schema.org Usage Statistics Dataset. BigQuery public dataset, released June 2026. developers.google.com/search/blog/2026/schema-org-usage-statistics
Extraction reports for JSON-LD, microdata, RDFa and microformats from the Common Crawl web corpus. Accessed September 2026. webdatacommons.org/structureddata/
Deployment of RDFa, Microdata, and Microformats on the Web: A Quantitative Analysis. International Semantic Web Conference (ISWC), 2013.
The WebDataCommons Microdata, RDFa and Microformat Dataset Series. International Semantic Web Conference (ISWC), 2014.
Schema.org: Evolution of Structured Data on the Web. Communications of the ACM, 59(2):44-51, 2016.
Wikidata: A Free Collaborative Knowledgebase. Communications of the ACM, 57(10):78-85, 2014.
Same extraction discipline, pointed at one domain. You get your backlink profile scored on relevance rather than domain rating, and the AI citation clusters your brand does and does not appear in. Free, and yours whether or not you work with us.