jsDelivr Package Stats Scraper avatar

jsDelivr Package Stats Scraper

Pricing

from $25.88 / 1,000 results

Go to Apify Store
jsDelivr Package Stats Scraper

jsDelivr Package Stats Scraper

Scrapes jsDelivr CDN package statistics: top rankings, single-package version and file details, and network totals. Returns hits and bandwidth per record.

Pricing

from $25.88 / 1,000 results

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

14 days ago

Last modified

Share

ParseForge

jsDelivr Package Stats Scraper

Scrape jsDelivr package download stats, rankings, and per-version CDN traffic for any npm or GitHub package. Get hits, bandwidth, and detailed file-level usage data. No API key required. Export to CSV, JSON, Excel, or XML.

jsDelivr's public API limits how much history you can pull in one call and requires you to stitch together multiple endpoints for a complete picture. This Actor reads the package stats endpoints directly, returning top rankings, single-package version and file breakdowns, or network-wide totals in one fixed schema. You can filter by npm packages, GitHub repos, or both, and choose any calendar or sliding time window.

Who uses itWhat they scrape jsDelivr CDN Stats API for
Open-source maintainersMonitor daily download trends and version adoption for their npm or GitHub packages.
Developer tool vendorsIdentify the most popular front-end libraries by CDN hits to prioritize integrations.
Data analystsBuild time-series datasets of package bandwidth consumption across the jsDelivr network.
Competitive intelligence teamsTrack rival package growth by hits and bandwidth over calendar months.

What it does

This Actor collects jsDelivr CDN package statistics by top rankings, single-package detail, or network totals, and returns each record as a flat row.

  • ๐Ÿ“Š Top rankings: the most popular packages by total hits or bandwidth, filtered by source and time window.
  • ๐Ÿ“ฆ Single package detail: per-version and per-file CDN stats for one specific npm or GitHub package.
  • ๐ŸŒ Network total stats: aggregate hits and bandwidth across the entire jsDelivr CDN for a chosen period.
  • ๐Ÿ“… Flexible time windows: calendar day, week, month, year, sliding 30-day or 365-day windows, and all-time.
  • ๐Ÿ”ข Configurable output: set a maximum number of packages to collect per run, up to one million.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with jsDelivr CDN Stats API data

๐Ÿ“ˆ Monitor your package's CDN growth.

An open-source maintainer runs the Actor weekly in single-package mode to see which versions users are pulling and whether migration to the latest release is happening.

๐Ÿ” Research top front-end libraries.

A developer tools startup scrapes the npm rankings by hits for the last 30 days to decide which frameworks to support in their next product update.

๐Ÿ“Š Build a bandwidth consumption report.

A data analyst collects network total stats month by month and plots the trend to forecast CDN infrastructure costs for a client.

โš–๏ธ Compare package popularity.

A competitive intelligence team pulls the top 100 GitHub repos by bandwidth each quarter to benchmark their employer's open-source project against peers.

Why choose this scraper

What you get
Hits and bandwidthTotal CDN hits and bytes served for every package, version, or file.
Source filteringChoose npm packages, GitHub repositories, or both in a single run.
Per-version breakdownSee which versions of a package are being served by the CDN.
Per-file detailGet hit counts for individual files within a package version.
Historical datesAnchor queries to a specific day, month, or year for historical analysis.

How it compares

This Actor focuses on flexible mode selection and detailed per-version, per-file breakdowns, while the alternative also extracts package-stat URLs.

FeatureParseForgejsDelivr Packages Scraper - CDN Package Stats
Top rankings modeYesYes
Single package detail (versions + files)YesNot listed
Network total stats modeYesNot listed
Sliding time windows (last 30/365 days)YesNot listed
Per-file hit countsYesNot listed
Package-stat URL extractionNot listedYes

Configure the run

Drive the Actor by selecting a mode (rankings, single package, or network totals), then set the package source, time period, and sort criterion. Filters run as each stat is read so only matching records reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
"type": "npm",
"period": "month",
"by": "hits",
"maxItems": 10
}

A larger pull:

{
"type": "npm",
"period": "month",
"by": "hits",
"maxItems": 200
}

Pricing

Pay-per-result: $0.0345 per result collected. You pay only for the results written to your dataset.

Results collectedApproximate cost
100 results$3.45
1,000 results$34.50
10,000 results$345.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the jsDelivr Package Stats Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to jsDelivr CDN Stats API through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/jsdelivr-package-stats-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results for my package name?

Check that the package name is spelled correctly and matches the source. For npm, use the exact package name (e.g. 'react'). For GitHub, use the owner/repo format (e.g. 'jquery/jquery'). Also verify that the package has traffic in the selected period.

The Actor returns fewer packages than my maxItems setting.

The jsDelivr API returns at most 1,000 entries per request. If you request more than 1,000, the Actor paginates automatically, but the total available may be less than your limit if the source does not have that many packages.

I selected a past date but got current data.

Ensure the date format matches the period: YYYY-MM-DD for day, YYYY-MM for month, YYYY for year. Leave the field blank to use the current period.

Why are GitHub repo stats lower than I expected?

jsDelivr only returns stats for public GitHub repositories. Private repos are not included. Also, GitHub-sourced stats may have lower traffic than their npm equivalents.

The per-file stats are empty for my package.

Not all packages expose per-file statistics. This depends on how the package is structured and served by jsDelivr. Try a different version or check if the package has a standard file layout.

FAQ

QuestionAnswer
What is the difference between calendar and sliding periods?Calendar periods align to standard boundaries: a calendar month is January, February, etc. Sliding periods are rolling windows ending today: a sliding month is the last 30 days, and a sliding year is the last 365 days.
Can I get stats for a GitHub repository?Yes. Set the package source to 'GitHub repositories' and provide the owner/repo name (e.g. 'jquery/jquery') in single-package mode. Only public repository stats are available.
How do I get per-version download counts for my npm package?Choose the 'Single package detail' mode, enter your package name (e.g. 'react'), and the Actor returns a row for each version with its hits and bandwidth.
Does this Actor require a jsDelivr API key?No. It reads the public jsDelivr stats endpoints directly. No registration or API key is needed.
What does the network total stats mode return?It returns one row with the aggregate hits and bandwidth served across the entire jsDelivr CDN for the period you select.
Can I get file-level stats inside a package?Yes. In single-package mode, the Actor returns per-file hit counts for each version of the package.
How far back can I pull historical data?You can anchor any period to a past date using the Date field. For all-time stats, select the 'All-time' period option.
What export formats are supported?You can export your results to CSV, JSON, Excel, or XML directly from the Apify dataset.
Can I scrape both npm and GitHub packages in one rankings run?Yes. Set the package source to 'All sources' when using the rankings mode to get a combined top list.
Is there a limit to how many packages I can collect?You can set the maximum packages field up to 1,000,000 per run. The jsDelivr API itself returns up to 1,000 entries per request, and the Actor handles pagination automatically.

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by jsDelivr. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.