GitHub Scraper: Repo Stats, Stars, Trending & Search
Pricing
from $1.40 / 1,000 repositories
GitHub Scraper: Repo Stats, Stars, Trending & Search
Scrape GitHub trending repositories by language and period with no token. Get repo stats via the official API: stars, forks, watchers, issues, PRs, languages, releases, contributors and commit activity. Search by language, stars, topics and dates, or list an org.
Pricing
from $1.40 / 1,000 repositories
Rating
0.0
(0)
Developer
Rod Services
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
19 days ago
Last modified
Categories
Share
GitHub Scraper for repo stats, stars, forks, GitHub trending and repository search. Export clean GitHub repository data to JSON, CSV or Excel, and track trending repositories by language, today, this week or this month, with no GitHub token needed for trending.
For any repo you get stars, forks, watchers, open issues, open PRs, languages, license, topics, latest release, contributors count and 52-week commit activity. Look up repos by URL, search GitHub by language, stars, topics and dates, list every public repo of an organization, or scrape github.com/trending. Repository data only, no personal data.
What you get
- Trending mode: the GitHub trending list with rank, stars, forks, stars gained in the period, language, description and the "built by" logins. One page per language, up to 25 repos each. No token, no API requests.
- Repo stats mode: one typed row per repository from the official GitHub REST API, with the extras you pick.
- Search mode: GitHub repository search by keywords, language, stars range, topics, created and pushed dates. Sorted by stars, forks or updates.
- Organization mode: every public repository of an organization or user.
- Auto mode (default): fill one section and the Actor picks the mode for you. Handy for AI agents and API calls.
Running on Apify gives you:
- API access to runs and datasets from any language, plus an MCP endpoint for AI agents
- Scheduling, for example a daily trending snapshot or a weekly watchlist refresh
- Integrations with Google Sheets, Airtable, Zapier, Make, Slack and webhooks
- Monitoring and alerts when a run fails
Quick start
- Click Try for free. The prefilled input scrapes today's GitHub trending repositories across all languages in a few seconds, without a token.
- To track one language, add it to Trending languages, for example
Python,RustorTypeScript, and pick Today, This week or This month. - For stats of specific repos, switch Mode to repositories (or leave it on Auto) and paste
owner/reponames or GitHub URLs. - Optional: add your own free GitHub token for API modes. It raises the GitHub limit from 60 to 5,000 requests per hour.
- Click Start. Download results as JSON, CSV, Excel or HTML, or read them through the API.
Input examples
Trending Python repos this week, no token:
{"mode": "trending","trendingLanguages": ["Python"],"trendingPeriod": "weekly","maxItems": 25}
Stats for a watchlist of repos:
{"repositories": ["microsoft/vscode", "https://github.com/python/cpython"],"includeCommitActivity": true}
New AI agent repos with momentum, by search:
{"mode": "search","topics": ["ai-agents"],"minStars": 500,"createdFrom": "2026-01-01","pushedFrom": "2026-09-01","sort": "stars","maxItems": 200}
Main fields. See the Input tab for all of them.
| Field | Mode | Notes |
|---|---|---|
mode | all | auto (default), trending, repos, search or org |
trendingLanguages | trending | Language names as on GitHub, for example C++ or Jupyter Notebook. Empty = all |
trendingPeriod | trending | daily (default), weekly or monthly |
trendingSpokenLanguage | trending | Optional 2-letter code, for example en or zh |
enrichTrending | trending | Add full API stats to each trending row. Uses API requests |
repositories | repos | owner/name, https://github.com/owner/name or .git URLs. Renamed repos are followed |
searchQuery, language | search | Free text plus any GitHub search qualifier, and the primary language |
minStars, maxStars, topics | search | Stars range, topics that must all match |
createdFrom/To, pushedFrom/To | search | Date ranges, YYYY-MM-DD |
organizations | org | Org or user logins, public repos only |
maxItems | all | Default 50 |
include* | API modes | Extras. Each costs 1 GitHub request per repo |
githubToken | API modes | Optional, secret. A fine-grained token with no extra permissions is enough |
Output sample
One item per repository. Views in the Output tab: Trending, Overview, Activity and Details. A RUN_SUMMARY record lists repos not found, why the run stopped early, if it did, and the remaining GitHub limit. You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.
A trending row:
{"trendingRank": 1,"fullName": "tester-army/e2e","url": "https://github.com/tester-army/e2e","description": "Next generation e2e testing framework for web and mobile apps.","language": "TypeScript","stars": 3871,"forks": 156,"starsInPeriod": 1430,"trendingPeriod": "daily","trendingLanguage": null,"builtBy": ["okwasniewski", "kacperkapusciak"],"source": "trending"}
A repo stats row, shortened:
{"fullName": "microsoft/vscode","stars": 193154,"forks": 43621,"watchers": 3543,"openIssues": 18445,"openPullRequests": 2705,"language": "TypeScript","languagesPercent": { "TypeScript": 96.2, "CSS": 1.6, "JavaScript": 0.6 },"topics": ["editor", "electron", "microsoft", "typescript", "visual-studio-code"],"license": "MIT","pushedAt": "2026-09-27T08:36:17Z","latestRelease": { "tag": "1.139.1", "publishedAt": "2026-09-25T09:58:03Z" },"contributorsCount": 315,"commits52w": 33289,"source": "repos"}
| Field | Description |
|---|---|
fullName, owner, name, url | Repository identity |
stars, forks, watchers | watchers is real subscribers, not the stars alias. Trending rows without API stats: null |
trendingRank, starsInPeriod, builtBy | Trending only: position, stars gained in the period, contributor logins shown on the page |
openIssues, openPullRequests | With the PR extra, openIssues excludes PRs |
language, languages, languagesPercent | Primary language, bytes and share per language |
license, topics, description, homepage | As set by the maintainers. E-mails are removed |
createdAt, pushedAt, updatedAt | ISO timestamps |
latestRelease, contributorsCount | Latest release tag and date, contributor count only |
commitActivity52w, commits52w | Weekly commits for the last 52 weeks and their total |
source, fetchedAt | Mode that produced the row and fetch time |
Pricing
Pay per result. No subscription. Repos that are not found are free, and help rows for input problems are free.
| Event | Free plan | Bronze | Silver | Gold |
|---|---|---|---|---|
| Repository, per 1,000 | $2.00 | $1.80 | $1.60 | $1.40 |
| Run start | $0.001 | $0.001 | $0.001 | $0.001 |
The prefilled trending run saves about 10 to 25 repos and costs about 3 to 5 cents. With Apify's free $5 monthly credit you can fetch about 2,500 repositories per month. Set Maximum cost per run and the Actor stops at that budget.
GitHub's own limits matter more than money:
- Trending mode: no token and no API requests. One page request per language.
- API modes without a token: GitHub allows 60 requests per hour per IP, and Apify IPs can be shared. Default extras use 5 requests per repo, so expect about 10 repos per hour. If the limit runs out, the Actor keeps what it saved. If nothing was saved, it ends with one free
RATE_LIMITEDhelp row that says when the limit resets. - API modes with your token: 5,000 requests per hour, about 1,000 repos per hour with default extras.
Use with AI agents (MCP)
Add this Actor to Claude, Cursor or any MCP client through mcp.apify.com. Agents can call it with just {"repositories": ["owner/repo"]}, {"trendingLanguages": ["Rust"]} or {"searchQuery": "vector database"}. Auto mode picks the right job.
Tips
- Add a GitHub token for API modes. Open GitHub token settings, create a fine-grained token, choose Public repositories and add no permissions. It is stored encrypted and never logged.
- Turn off extras you do not need. Each extra costs 1 request per repo.
- GitHub search returns at most 1,000 results per query. Split big searches by stars ranges or creation dates.
- Commit activity is computed by GitHub on demand. The first call for a repo can come back empty.
- Schedule trending daily or weekly and send new rows to Slack or Google Sheets with an integration.
FAQ
Do I need a GitHub token? Not for trending. For repo stats, search and organization lists, a token is optional but recommended: without one GitHub allows only 60 API requests per hour.
How does trending work? The Actor reads the public github.com/trending page, one request per language and period, the same list you see in the browser. GitHub shows up to 25 repositories per page. Turn on enrichTrending to add full API stats to each row.
Is it legal to collect GitHub repository data? The Actor returns repository-level data only: no e-mails and no profile data. Contributors appear only as a count, and trending rows carry only the public logins GitHub shows under "Built by". API modes use the official GitHub REST API. Do not use the data for spam, recruiting outreach or selling personal information, which GitHub forbids. You are responsible for your use of the data.
Can I get private repositories? No. Public repositories only.
What happens if my input is invalid? The run still ends SUCCEEDED and you pay only the start fee. The dataset gets one free help row with error, errorCode, message and howToFix. Codes: EMPTY_INPUT, INVALID_INPUT, INVALID_TOKEN, QUERY_REJECTED, NO_RESULTS and RATE_LIMITED.
Something missing or broken? Open an issue in the Issues tab. We reply fast.