You need to agree to share your contact information to access this dataset

This repository is publicly accessible, but you have to accept the conditions to access its files and content.

Log in or Sign Up to review the conditions and access this dataset content.

ChemPatents — Google Patents CPC C07 Snapshot (2000–2026)

A snapshot of 2,670,764 patent publications from Google Patents under CPC class C07 (organic chemistry), with publication dates from 2000-01-01 to 2026-05-08.

Records are family-deduplicated (one row per patent family; the deduplication column is Family for every row). Every publication_number in the file is unique.

Files

Path Format Size
data/chempatents_c07_2000_2026.parquet Parquet (zstd-9) 326 MB
raw/google_patents_c07_current_snapshot_2000_2026.csv Original CSV 1.75 GB

Both hold identical content. The Parquet file is the one the dataset viewer and load_dataset use; the CSV is kept for provenance. Row counts were verified to match (2,670,764) with two independent parsers.

Usage

from datasets import load_dataset

ds = load_dataset("EscheWang/ChemPatents", split="train")
print(ds[0])

Or read the Parquet directly — it is small enough to fit in memory:

import pandas as pd
df = pd.read_parquet("hf://datasets/EscheWang/ChemPatents/data/chempatents_c07_2000_2026.parquet")

Lazily, without materialising the whole table:

import polars as pl
lf = pl.scan_parquet("hf://datasets/EscheWang/ChemPatents/data/chempatents_c07_2000_2026.parquet")
lf.filter(pl.col("published_date").dt.year() == 2024).select("title").head().collect()

Schema

16 columns. No nulls anywhere — missing text values are the empty string "", as in the source CSV.

Column Type Description
publication_number string Publication ID, e.g. US10035800B2. Unique across the dataset.
title string Patent title. May be truncated with in the source.
metadata string Unparsed blob: jurisdiction codes, publication number, inventor, assignee.
active_countries string ;-separated country codes where the family is active. Empty for 9.6% of rows.
dates string Unparsed date line, e.g. Priority 1998-08-07 • Filed 1999-08-06 • Published 2001-02-06.
published_date date32 Parsed publication date.
abstract_snippet string Search-result snippet: metadata + dates + a truncated abstract, newline-separated. Not a clean abstract.
patent_link string Google Patents URL.
pdf_link string PDF URL. Empty for 33.2% of rows.
interval_start date32 Start of the date window used by the scraping query.
interval_end date32 End of that window.
page int64 Result page within the query.
result_rank int64 Rank within the page.
absolute_page_rank int64 Rank across the query's result set.
query string The Google Patents query that returned this row, e.g. CPC=C07D/low; country=CN.
deduplication string Always Family.

The last six columns describe how the row was collected, not the patent itself. Drop them for most modelling uses.

Composition

CPC subclass, by the query that retrieved each row (208 distinct query strings; grouped here):

Query family Rows
C07 (broad) 1,508,364
C07D heterocyclic 411,516
C07K peptides 355,254
C07C acyclic/carbocyclic 236,388
C07F organo-element 53,381
C07H sugars/nucleosides 42,163
C07B general processes 38,201
C07J steroids 10,632
C07G unknown-constitution 993

Top jurisdictions by publication-number prefix: US 446,410 · CN 354,965 · EP 317,123 · WO 254,512 · JP 224,787 · KR 146,225 · AU 124,531 · DE 86,315 · CA 76,893 · TW 53,476.

⚠️ Known limitation: uneven year coverage

This is not a complete census of C07 publications, and coverage is very uneven across time. Rows per publication year:

Years Rows/year
2000–2014 ~93k–140k dense
2015 78,823 thinning
2016–2022 5,524–25,031 sparse — badly under-covered
2023–2025 94,553–220,854 dense
2026 51,863 partial year (to 2026-05-08)

The 2016–2022 window has roughly 5–20× fewer records per year than the periods around it. This reflects gaps in how the snapshot was collected, not a real collapse in patenting activity. Do not use this dataset for time-series or trend analysis without accounting for it, and treat absolute counts in that window as a lower bound.

Other caveats:

  • abstract_snippet is a search-result snippet, not a full abstract — it is prefixed with the metadata and date lines and the abstract text itself is often truncated with .
  • title is likewise truncated for long titles.
  • No claims, no full text, no chemical structures (no SMILES/InChI). This is bibliographic metadata.
  • Rows are retrieval records: page, result_rank, and query reflect a scraping process and carry no information about the patent.

Provenance

Scraped from Google Patents search results by CPC code over date windows, then deduplicated by patent family. Converted from the original CSV to Parquet with PyArrow (zstd level 9); the conversion is lossless and row counts were cross-checked with Python's stdlib csv reader.

License

The dataset card and the compilation are released under Apache-2.0. The underlying bibliographic records originate from Google Patents; patent documents themselves are public records, but check Google Patents' terms before redistributing derived products.

Downloads last month
14