GitHub Restores Star Growth Tracking Without Exposing Who Starred

GitHub added a REST endpoint that returns weekly star counts with timestamps, restoring star-history tracking that broke when stargazer listings were locked down.

·
·
GitHub Restores Star Growth Tracking Without Exposing Who Starred
Read2 min
  • New REST endpoint GET /repos/{owner}/{repo}/stargazers/history returns weekly star counts without exposing stargazer identities.
  • Restores star-growth tracking broken when GitHub locked stargazer listings to admins and collaborators in July.
  • Response groups stars by calendar week with a days array starting Sunday, most recent week first.
  • Pagination is capped at 30 per page and 100 pages, ordered newest to oldest.
  • No auth required for public repos; fine-grained tokens need only Metadata read permission.
  • See the official REST docs for schema and examples.

GitHub just plugged a hole it opened earlier this year. A new REST endpoint, GET /repos/{owner}/{repo}/stargazers/history, returns a repository's star growth over time without exposing who did the starring. It restores a workflow that dashboards, badges, and internal analytics tools lost when the old stargazer listings were locked down in July.

That lockdown restricted stargazer listing endpoints so only repository admins and collaborators could enumerate who starred a repo, framed as a privacy measure to prevent misuse of the data. Useful for users, painful for anyone building a star time series from those endpoints.

What comes back

The star history endpoint returns aggregated counts grouped by calendar week, most recent first, with pages moving backward toward the repository's creation week. Weeks without activity still appear with zero counts. The days array holds per-day star counts starting on Sunday, and week boundaries are not guaranteed to align with UTC midnight.

A sample response:

[
  {
    "week": 1754784000,
    "total": 19,
    "days": [0, 12, 7, 0, 0, 0, 0]
  }
]

Calling it

Public repositories require no authentication:

curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "X-GitHub-Api-Version: 2026-03-10" \
  https://api.github.com/repos/OWNER/REPO/stargazers/history

A few constraints worth knowing:

  • Pagination caps at 30 results per page, with a maximum page number of 100.
  • Fine-grained tokens need only the Metadata repository read permission; public repos need no token at all.
  • Responses contain aggregate counts only. Stargazer identities never appear.

Who benefits, and what's gone

Star-history charts, trending-repo leaderboards, OSS dashboards, and README badges that plot growth over time all have a sanctioned replacement path here. Concatenating pages yields one continuous series going back to the repository's creation week, which covers the common case of tracking momentum over time.

Analysis that depended on individual stargazer identity, such as identifying influential stargazers, flagging suspected star-farming, or cross-referencing stars with follower graphs, is gone from the public API by design. The endpoint ships the shape of the curve, which is what most growth tracking actually needs. It is available now on github.com within standard API rate limits.

Comments

avatar