Data study · Downloads of the tools that read websites for AI

Downloads of Python Tools That Read Schema Markup Fell 12.1% in Two Years While Web-to-Text Tools for AI Grew 19.4x

KGWritten by Kriszta GrenyoPublished October 20264 min read

Three structured data extraction packages were downloaded 1,062,249 times in the Q3 2026 sample days, down from 1,208,743 in Q3 2024. Over the same period, tools that turn pages into plain text for AI went from 5,269,844 to 101,997,090 downloads.

Analysis of 10,559,377 PyPI downloads of 3 structured data extraction packages across 399 sampled days, Jan 2022 to Sep 2026 · PyPI public download logs via BigQuery, October 2026

Key findings

  1. 1

    Structured data extractor downloads fell 12.1% between the Q3 2024 and Q3 2026 sample days (1,208,743 to 1,062,249).

  2. 2

    Web-to-text tools grew 19.4x over the same two years (5,269,844 to 101,997,090).

  3. 3

    Over four years the extractors grew 9.7x, about the same as PyPI's 9.5x, so their share of Python downloads was roughly flat (0.00090% vs 0.00092%).

  4. 4

    Downloads peaked in Q1 2025 at 1,425,505 and have not returned to that level.

  5. 5

    The JSON-LD processor pyld grew steadily, 7.8x from Q3 2022 to Q3 2026 (31,722 to 246,591).

  6. 6

    41.8% of Q3 2026 downloads were CI-flagged, up from 2.4% in Q3 2024.

Summary

Picture a wedding venue that adds schema markup to its site: event venue type, address, capacity and price range, all in a neat block of JSON-LD. The markup is there for machines. The question is how many of the machines reading the page actually pull it out.

In Python, the main open-source tools for extracting JSON-LD, microdata and similar markup are extruct, mf2py and pyld. Their downloads on the Python Package Index give a rough view of how often developers build pipelines that read structured data, compared with pipelines that simply turn a page into text.

The gap is wide and getting wider. In the Q3 2026 sample days, structured data extractors were downloaded 1,062,249 times, 12.1% fewer than two years before. Tools that convert pages to plain text for AI were downloaded 101,997,090 times, 19.4x their 2024 level.

What we measured

We queried the public PyPI download log in Google BigQuery (bigquery-public-data.pypi.file_downloads), which records one row for every file downloaded from the Python Package Index. To keep the query affordable we sampled the first seven days of every month from January 2022 through September 2026, 399 days in total, and summed downloads by month, package, country, CI flag, installer and weekday versus weekend into one working table. A quarter in this study therefore means 21 sampled days (days 1 to 7 of each of its three months), not a full quarter. We removed downloads made by mirroring and proxy tools (bandersnatch, Nexus, Artifactory, devpi), which copy packages in bulk rather than install them. To control for the growth of PyPI itself we also pulled total daily download counts for the whole index from the table's partition metadata for the same sampled days.

We tracked three packages: extruct (extracts JSON-LD, microdata, RDFa and Open Graph), mf2py (microformats) and pyld (JSON-LD processing). extruct installs mf2py as a dependency, which is why their curves move together. Large crawling frameworks and search engines use their own extraction code, which these counts do not cover.

Structured data extraction has not grown in two years

-12.1%change in downloads, Q3 2024 to Q3 2026 (1,208,743 to 1,062,249)

Quarterly downloads per package (21 sampled days).

Structured data extractor downloads per quarter
Quarterextructmf2pypyldTotal
Q1 2022201,722202,29823,337427,357
Q2 202228,00629,80223,96081,768
Q3 202237,35040,05131,722109,123
Q4 202237,69939,01140,587117,297
Q1 202338,63039,07845,664123,372
Q2 202346,04746,47655,455147,978
Q3 202356,13573,23246,828176,195
Q4 202384,80197,92867,368250,097
Q1 2024140,867151,52258,259350,648
Q2 2024120,809131,63066,423318,862
Q3 2024555,230572,48481,0291,208,743
Q4 2024370,651406,989230,0611,007,701
Q1 2025652,690653,680119,1351,425,505
Q2 2025312,645314,611139,052766,308
Q3 2025402,034403,108158,680963,822
Q4 2025272,644280,516177,631730,791
Q1 2026215,512219,638160,796595,946
Q2 2026244,555246,669204,391695,615
Q3 2026429,942385,716246,5911,062,249

Source: aisearchoptimization.net analysis of 10,559,377 PyPI downloads of 3 structured data extraction packages across 399 sampled days, Jan 2022 to Sep 2026 · PyPI public download logs via BigQuery, October 2026

The group rose from about 100,000 sampled downloads per quarter in 2022 to a peak of 1,425,505 in Q1 2025, then fell back. The Q1 2022 spike came from a single sample week (March 2022, 374,895 downloads).

Text extraction is growing far faster

96 to 1web-to-text downloads per structured data extractor download, Q3 2026

Q3 sample-day downloads for both groups.

Structured data extractors vs web-to-text tools
Q3 2022
1,445,418
Q3 2023
2,221,174
Q3 2024
5,269,844
Q3 2025
19,349,268
Q3 2026
101,997,090

Downloads

QuarterStructured data extractorsWeb-to-text tools
Q3 2022109,1231,445,418
Q3 2023176,1952,221,174
Q3 20241,208,7435,269,844
Q3 2025963,82219,349,268
Q3 20261,062,249101,997,090

Source: aisearchoptimization.net analysis of 10,559,377 PyPI downloads of 3 structured data extraction packages across 399 sampled days, Jan 2022 to Sep 2026 · PyPI public download logs via BigQuery, October 2026

In Q3 2024 web-to-text tools were downloaded 4.4 times as often as structured data extractors. In Q3 2026 the ratio was 96.0. Most HTML-to-text converters skip script blocks by default, and JSON-LD sits inside a script block, so a pipeline that only converts pages to text does not keep schema markup unless it extracts it separately.

More of the remaining downloads come from automated pipelines

41.8%of Q3 2026 downloads were CI-flagged

Download signals for the three extractors.

Structured data extractor download signals
CI share (%)uv installer share (%)
Q3 2024
2.4
0.1
Q3 2025
14.1
4
Q3 2026
41.8
45.3

%

QuarterCI share (%)uv installer share (%)
Q3 20242.40.1
Q3 202514.14
Q3 202641.845.3

Source: aisearchoptimization.net analysis of 10,559,377 PyPI downloads of 3 structured data extraction packages across 399 sampled days, Jan 2022 to Sep 2026 · PyPI public download logs via BigQuery, October 2026

US IP addresses accounted for 83.7% of Q3 2026 downloads across 136 country codes, followed by Germany at 4.5%. Country codes mostly show where servers run.

What this means

Schema markup still matters. Search engines read it, and it can help AI systems that do extract it confirm facts such as your business type, address and hours. But this data suggests that far more Python AI pipelines are built to read the visible text of your pages than the markup. So the facts in your schema should also appear in plain words on the page: your address in the footer, your hours on the contact page, your services in headings.

Think of schema as a second copy of your key facts, not the only copy. We check both your markup and your page text in a free AI visibility audit, because LLM optimization that fixes only schema misses most of what AI tools read.

Limits

A download is not a user. One developer, one Docker build or one CI job can download the same package many times, and a single busy pipeline can move a package's numbers sharply from month to month.

Figures cover the first seven days of each month only (21 days per quarter), so they are sample totals, not full-month or full-quarter totals. Growth rates compare like-for-like sample periods.

PyPI as a whole grew from 12.1 billion downloads in the Q3 2022 sample days to 115.0 billion in the Q3 2026 sample days (9.5x), so part of every package's growth is the index growing. We report share of all PyPI downloads where it matters.

PyPI-wide downloads in the September 2026 sample week were 38.1% lower than in the August 2026 sample week (28.7 billion vs 46.4 billion), so September figures for individual packages should be read with that drop in mind.

The CI flag is only populated in this dataset from March 2024, and it only catches environments that announce themselves as CI. Automated downloads that do not set a CI variable are counted as non-CI.

Country codes come from the downloading IP address. Cloud servers sit mostly in the United States, so country splits describe where machines run, not where developers live.

Search engines and large AI companies use in-house extraction code that never appears in PyPI logs, so this data cannot show how often schema is read overall.

Three packages is a small group, and one-week bursts can swing quarterly totals.

extruct installs mf2py, so the two packages partly double-count the same installs.

Embed this research

Add the charts from this study to your page. The embed links back here.

<iframe src="https://aisearchoptimization.net/embed/data-studies/structured-data-extractor-downloads" title="Schema Extractor Downloads Fell 12%; AI Text Tools Grew 19x" width="100%" height="720" style="border:0" loading="lazy"></iframe>

Cite this study

APA

Grenyo, K. (2026). Schema Extractor Downloads Fell 12%; AI Text Tools Grew 19x. AI Search Optimization. https://aisearchoptimization.net/resources/data-studies/structured-data-extractor-downloads

Plain link

Schema Extractor Downloads Fell 12%; AI Text Tools Grew 19x - AI Search Optimization - https://aisearchoptimization.net/resources/data-studies/structured-data-extractor-downloads

Download the data (CSV)

Frequently asked questions

Do AI tools read schema markup?

Some do, especially search engines and pipelines built to extract it. In open-source Python, though, structured data extractors were downloaded 1,062,249 times in the Q3 2026 sample days against 101,997,090 for web-to-text tools.

Are structured data extraction tools growing?

Not lately. Downloads fell 12.1% from Q3 2024 to Q3 2026, after peaking at 1,425,505 in Q1 2025.

Should I still add schema markup?

Yes. It helps search engines and any system that does read it. Just make sure the same facts appear in your visible page text too.

What is JSON-LD?

It is a block of structured data inside a script tag in your page's HTML that describes things like your business name, address and services in a format machines can parse.

See where AI search leaves you out

Run the free AI visibility audit. If you want the fixes done for you, the plan is a flat $299/month.