Codecov Code Coverage Stats Scraper
Pricing
from $27.22 / 1,000 results
Codecov Code Coverage Stats Scraper
Scrape Codecov public repository coverage stats: percent covered, branch coverage, lines hit/miss, latest commit, language breakdown. No API key required.
Pricing
from $27.22 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share

🧪 Codecov Code Coverage Stats Scraper
🚀 Export Codecov coverage data in seconds across four levels. Pull repo-level totals, every commit, every pull request with base/head coverage delta, or every file with line-level coverage. Public Codecov accounts on GitHub, GitLab, and Bitbucket. No API key, no registration.
🕒 Last updated: 2026-05-13 · 📊 4 modes, repo + commit + pull + file granularity · 🌐 GitHub + GitLab + Bitbucket · ⏳ 30-day trend per repo
The Codecov Code Coverage Stats Scraper wraps the official Codecov public API (api.codecov.io/api/v2) and turns coverage telemetry into flat rows at four levels of granularity. The underlying platform is Codecov, the most widely adopted hosted code-coverage service, integrated into thousands of CI pipelines across the open-source ecosystem.
🎚️ Four modes, four levels of granularity
This is the differentiator. Pick the granularity that matches your analysis:
| Mode | One row per | Typical volume per active repo |
|---|---|---|
🏗️ repos | repository | 1 (one row per tracked repo, enriched with 30-day trend + best/worst file) |
⚙️ commits | commit | 700+ (full commit history with per-commit coverage, hits, misses, partials, branches) |
🔀 pulls | pull request | Hundreds (base vs head coverage and delta, per-PR patch stats) |
📄 files | file in the latest report | Dozens to thousands (per-file coverage, covered line numbers, uncovered line numbers) |
| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Engineering leaders, DevEx and platform teams, OSS maintainers, internal audit, ML-on-code researchers, hiring teams, build-quality consultants | Coverage scorecards, CI/CD KPIs, regression tracking, OSS quality benchmarking, file-level hotspot analysis, build-quality reporting |
📋 What the Codecov Scraper does
Four targeted workflows in a single Actor:
- 🏗️
reposmode. For each tracked repo: name, language, branch, total coverage, line/branch/method coverage, hits, misses, partials, sessions, complexity, latest-commit pointer, and a 30-day coverage trend with direction (rising / falling / stable) and delta. Also includes the best-covered and worst-covered file. One row per repo. - ⚙️
commitsmode. For each commit on every active repo: commit SHA, branch, message, timestamp, author, CI status, parent SHA, coverage, files, lines, hits, misses, partials, branches, methods, sessions, complexity. Hundreds of rows per active repo. - 🔀
pullsmode. For each pull request: title, state, CI status, author, base coverage, head coverage, coverage delta, head lines/hits/misses/partials/files, and patch totals. Lets you see exactly how each PR moved coverage. - 📄
filesmode. For each file in the latest coverage report: filename, coverage percent, lines, hits, misses, partials, branches, methods, complexity, and the full list of covered and uncovered line numbers. Hotspot-grade detail.
Filter by provider (GitHub / GitLab / Bitbucket), owner (any public Codecov account), optional single repo to bypass pagination, and activeOnly to limit to repos currently receiving uploads.
💡 Why it matters: Codecov scorecards usually live behind a manual UI flip-through. This Actor turns the entire telemetry stack into rows you can drop into a warehouse, a quality dashboard, or an ML feature store. The four-mode design means you can zoom out to a portfolio view or zoom in to specific uncovered line numbers in a single afternoon.
🎬 Full Demo
🚧 Coming soon: a 3-minute walkthrough showing all four modes against a popular OSS org.
⚙️ Input
| Input | Type | Default | Behavior |
|---|---|---|---|
mode | enum | "repos" | repos, commits, pulls, or files. Controls row granularity. |
owner | string | "vercel" | GitHub / GitLab / Bitbucket user or organization slug. Examples: apache (3.1k repos), vercel (225), openai (170). |
maxItems | integer | 10 | Records to return. Free plan caps at 10, paid plan at 1,000,000. |
repo | string | "" | Single repository name. If set, fetches that one repo only and ignores pagination. |
provider | enum | "github" | github, gitlab, or bitbucket. |
activeOnly | boolean | false | When checked, only return repos currently sending coverage uploads. Tight filter; large orgs may drop from thousands to dozens. |
Example: every Vercel repo with current coverage stats.
{"mode": "repos","provider": "github","owner": "vercel","maxItems": 50}
Example: every commit on the vercel/edge-runtime repo.
{"mode": "commits","provider": "github","owner": "vercel","repo": "edge-runtime","maxItems": 500}
Example: file-level coverage hotspots in a single repo.
{"mode": "files","provider": "github","owner": "vercel","repo": "edge-runtime","maxItems": 100}
⚠️ Good to Know: Codecov returns telemetry only for repos that have uploaded reports. Many tracked repos show
nullcoverage because they have never uploaded. UseactiveOnly: trueto skip them. Commits and files modes are most useful for orgs with active CI; pulls mode is most useful for repos with active PR review.
📊 Output
Each mode returns a different row shape. Download the dataset as CSV, Excel, JSON, or XML.
🧾 Schema for repos mode (selected fields)
| Field | Type | Example |
|---|---|---|
📛 name | string | "edge-runtime" |
🔗 fullName | string | "vercel/edge-runtime" |
🌐 url | string | "https://codecov.io/github/vercel/edge-runtime" |
🏷️ provider | string | "github" |
💬 language | string | null | "typescript" |
🌿 branch | string | null | "main" |
🔓 isPrivate | boolean | false |
✅ activated / active | boolean | true |
📊 totalCoverage | number | null | 82.58 |
📊 lineCoverage | number | null | 82.58 |
🔢 files / lines / hits / misses | integer | null | 40 / 2434 / 2010 / 404 |
🚦 coverageRiskLevel | enum | null | "low" / "medium" / "high" |
⏳ coverageTrend30dPoints | array | 30 daily points (min/max/avg) |
📈 coverageTrendDirection | enum | "rising" / "falling" / "stable" |
📉 coverageTrend30dDelta | number | +1.42 |
🏆 topFile | object | Best-covered file with name + coverage |
🔥 worstFile | object | Worst-covered file with name + coverage |
🕒 scrapedAt | ISO 8601 | "2026-05-13T00:13:47.650Z" |
🧾 Schema for commits mode
| Field | Type | Example |
|---|---|---|
🆔 commitid | string | "2823f9481f54e75ee433cc040479ac4914bb567f" |
🌿 branch | string | null | "readme" |
💬 message | string | null | "docs: tweaks" |
🕒 timestamp | ISO 8601 | null | "2023-01-09T15:51:01Z" |
👤 authorUsername | string | null | "Kikobeats" |
✅ ciPassed | boolean | null | true |
📊 coverage | number | null | 82.58 |
🔢 files / lines / hits / misses / partials | integer | null | 40 / 2434 / 2010 / 404 / 20 |
🔗 url | string | "https://app.codecov.io/github/vercel/edge-runtime/commit/2823f948..." |
🧾 Schema for pulls mode
| Field | Type | Example |
|---|---|---|
🔢 pullid | integer | 123 |
📛 title | string | null | "feat: handle X" |
🏷️ state | string | null | "merged" |
📊 baseCoverage / headCoverage | number | null | 81.20 / 82.58 |
📈 coverageDelta | number | null | +1.38 |
🔢 headFiles / headLines / headHits / headMisses | integer | null | 40 / 2434 / 2010 / 404 |
🧾 Schema for files mode
| Field | Type | Example |
|---|---|---|
📄 filename | string | "src/handler.ts" |
📊 coverage | number | null | 92.5 |
🔢 lines / hits / misses / partials | integer | null | 120 / 111 / 9 / 0 |
✅ coveredLineNumbers | integer[] | [1, 2, 3, 7, 8, ...] |
❌ uncoveredLineNumbers | integer[] | [42, 43, 87] |
🔗 url | string | "https://app.codecov.io/github/.../blob/HEAD/src/handler.ts" |
📦 Sample record (commits mode)
✨ Why choose this Actor
| Capability | |
|---|---|
| 🎚️ | 4 levels of granularity. Repos, commits, pulls, files. Pick the row shape that matches your analysis. |
| 📈 | 30-day trend per repo. Coverage direction and delta computed for you in repos mode. |
| 🔥 | File-level hotspots. files mode returns the exact line numbers that are uncovered. |
| 🔀 | PR coverage delta. pulls mode shows base vs head coverage so you can quantify each PR. |
| 🌐 | Multi-provider. GitHub, GitLab, and Bitbucket public Codecov accounts. |
| 🏆 | Best / worst file. repos mode auto-surfaces the most and least covered file. |
| ⚡ | Fast and concurrent. Repo enrichment runs 5 calls in parallel per repo. |
| 🚫 | No authentication. Public Codecov accounts only. No API key needed. |
📊 Coverage tells you whether your tests run. Combining it with trend, PR delta, and per-file hotspots tells you whether your engineering org is improving.
📈 How it compares to alternatives
| Approach | Cost | Granularity | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| ⭐ Codecov Scraper (this Actor) | $5 free credit, then pay-per-use | 4 modes (repo/commit/pull/file) | Live per run | provider, owner, repo, active-only | ⚡ 2 min |
| Codecov web UI | Free | Single page at a time | Live | UI filters | 🐢 Slow, no automation |
| Custom Codecov API client | Free | Custom | Live | Custom | 🛠️ Hours to engineer 4 endpoints |
| Enterprise quality platforms | $$$$ | Multi-source | Vendor cadence | Vendor-specific | ⏳ Days |
Pick this Actor when you want all four levels of Codecov telemetry in flat rows with a single input form.
🚀 How to use
- 📝 Sign up. Create a free account with $5 credit (takes 2 minutes).
- 🌐 Open the Actor. Go to the Codecov Code Coverage Stats Scraper page on the Apify Store.
- 🎚️ Pick a mode.
reposfor portfolio view,commits/pulls/filesfor detail. - 🎯 Set owner + repo. Plug in any public Codecov account and an optional single repo name.
- 🚀 Run it. Click Start and let the Actor collect your data.
- 📥 Download. Grab your results in the Dataset tab as CSV, Excel, JSON, or XML.
⏱️ Total time from signup to downloaded dataset: 3-5 minutes. No coding required.
💼 Business use cases
🔌 Automating Codecov Scraper
Control the scraper programmatically for scheduled runs and pipeline integrations:
- 🟢 Node.js. Install the
apify-clientNPM package. - 🐍 Python. Use the
apify-clientPyPI package. - 📚 See the Apify API documentation for full details.
The Apify Schedules feature lets you trigger this Actor on any cron interval. Nightly portfolio refreshes or per-PR coverage capture both work.
🌟 Beyond business use cases
The same structured records support research, education, civic projects, and personal initiatives.
🤖 Ask an AI assistant about this scraper
Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:
- 💬 ChatGPT
- 🧠 Claude
- 🔍 Perplexity
- 🅒 Copilot
❓ Frequently Asked Questions
🧩 How does it work?
The Actor hits the public Codecov API (api.codecov.io/api/v2), paginates through results, and returns one structured row per repo, commit, pull, or file. The shape depends on the mode you pick. Repo mode enriches each row with commits, branches, 30-day trend, and best/worst file via 4 parallel API calls.
🎚️ What does each mode do?
reposreturns one row per tracked repo, enriched with 30-day coverage trend, best file, and worst file.commitsreturns one row per commit (700+ rows for active repos). Coverage, hits, misses, branches, CI status.pullsreturns one row per pull request with base/head coverage and the delta.filesreturns one row per file in the latest report with covered and uncovered line numbers.
🌐 Which providers are supported?
GitHub, GitLab, and Bitbucket public Codecov accounts. Set the provider input. Default is GitHub.
🔓 Does it work on private repos?
No. This Actor uses the unauthenticated public Codecov API. Private repos require an API token, which is out of scope for this Actor.
🚦 Why does coverage show null on some repos?
Codecov returns telemetry only for repos that have uploaded reports. Repos that are tracked but never uploaded show null. Set activeOnly: true to skip them.
📈 What is coverageRiskLevel?
A categorical bucket computed from totalCoverage. low >= 80, medium 60-79, high < 60. Useful for quick scorecard summaries.
📊 What is coverageTrend30dDelta?
The numeric change in average coverage over the last 30 days (head minus tail). Positive = rising, negative = falling, near-zero = stable.
⏰ Can I schedule regular runs?
Yes. Use Apify Schedules to run this Actor on any cron interval (hourly, daily, weekly) and keep a downstream database in sync.
⚖️ Is this data legal to use?
Codecov public accounts are intentionally exposed for community visibility. The Actor accesses only public endpoints. Review Codecov terms of use for any platform-specific restrictions before commercial redistribution.
💼 Can I use this data commercially?
Yes. Coverage data on public accounts is public information and can be used in commercial products. Cite Codecov as the source.
💳 Do I need a paid Apify plan to use this Actor?
No. The free Apify plan is enough for testing and small runs (10 records per run). A paid plan lifts the limit to 1,000,000 records.
🆘 What if I need help?
Our support team is here to help. Contact us through the Apify platform or use the Tally form linked below.
🔌 Integrate with any app
Codecov Scraper connects to any cloud service via Apify integrations:
- Make - Automate multi-step workflows
- Zapier - Connect with 5,000+ apps
- Slack - Coverage-drop alerts in your channels
- Airbyte - Pipe coverage into your warehouse
- GitHub - Trigger runs from commits and releases
- Google Drive - Export datasets straight to Sheets
You can also use webhooks to trigger downstream actions when a run finishes. Alert your team in Slack when coverage on a tracked repo drops below a threshold.
🔗 Recommended Actors
- 🤖 Hugging Face Model Scraper - ML model registry metadata
- 📦 Stripe App Marketplace Scraper - Stripe ecosystem catalog
- 📦 AWS Marketplace Scraper - AWS catalog and pricing
- 🛒 Hubspot Marketplace Scraper - HubSpot integration catalog
- ✈️ OurAirports Global Airport Database Scraper - Reference dataset benchmark
💡 Pro Tip: browse the complete ParseForge collection for more reference-data scrapers.
🆘 Need Help? Open our contact form to request a new scraper, propose a custom data project, or report an issue.
⚠️ Disclaimer: this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Codecov or Sentry. All trademarks mentioned are the property of their respective owners. Only publicly available data from the official Codecov public API is collected.