A thin graphite-line plant growing from the paper, a small teal star at its tip

Open-source growth

Pushing GitHub stars: is there a legit playbook?

The star-velocity curve around one X campaign, re-checkable in a third-party archive — plus how GitHub Trending actually behaves.

Tutti ResearchPublished ≈ 6 min read

Earlier this year we ran a campaign for an open-source project — an open-source AI agent OS. The brief was blunt: v1.0.0 was about to ship, and they wanted GitHub stars to move.

"Pushing stars" sounds, to many ears, like buying fakes and gaming charts. Having run this one, I can say there is a legitimate way to do it: real content on X — with results a third-party archive can verify. This piece lays out the data and the playbook.

01 · The data

Inside the campaign window, velocity went from 70 to 121 stars a day

Around the campaign, the repo's star velocity looked like this — interval averages from Wayback Machine's public archive snapshots, which anyone can re-check. Two things are worth staring at.

GitHub star velocity · five periods around the campaign window
stars / day · interval averages between archive snapshots
29April baseline70May warm-up121Campaign window7.3K → 9.9K56After close33A month on

Source: Wayback Machine public archive snapshots, independently re-checkable. The window overlapped the product's v1.0.0 release.

1/ Velocity nearly doubled inside the window. That stretch packed the v1.0.0 release, official content, and the creator burst into one window — lining launch cadence up with the campaign was the play from the start, and the Trending section covers why.

2/ For scale, the repo's normal speed: across the four periods outside the window, daily gains ran between 29 and 70. Inside the window it was 121 — four-plus times the April baseline.

The push itself: two campaigns, two-hundred-plus creators, 2.7M effective impressions in total. Creator content burst over twelve days, and the early-July archive snapshot caught the peak stretch. On the GitHub side we did nothing at all — not one star bought, not one fork arranged. Everything the repo gained was organic conversion carried by the content.

02 · The X leverage

Why an X campaign moves GitHub

Developers don't click ads. Developers scroll X.

The content that actually broke through this campaign was all one type: creators rebuilding their own workflow on the product and writing the process up as a hands-on long read. The top one — a step-by-step tutorial — drew 370K views; an architecture deep-dive did 240K.

The stars this brings are a different thing from ad clicks. The real user path usually runs: see the tutorial — screenshot it into a group chat — open the repo days later and hit star. There are reshares in between you'll never trace, but the landing is a real developer, and the star arrives with forks, issues, and actual use.

One more pattern: distribution is a head game. Across both campaigns, over half the views came from the top ten posts. So when we build a roster, we first hold slots for people who can produce a head post, then fill the rest to lock in the base volume. We wrote that method up in another report.

04 · Fake stars

What about buying stars?

There are sellers who will just sell you stars. Three problems.

Fake stars are trivially easy to spot: accounts registered the same day, zero activity, starring you and two hundred other repos in one sitting. The developer crowd has no shortage of tools for reading star curves — a dead-vertical line next to zero forks and zero issues is a public confession. One crude but useful health check: a healthy repo's forks usually run around a tenth of its stars — tens of thousands of stars over a dozen forks tells you what happened without the curve.

GitHub also purges, and on a cycle — weekly to monthly. Worse, the alert line is tracked per repository: buy too much and your repo's threshold rises, and then even real users get caught in the sweep — the same freshly registered, low-activity account stars two repos, and the star survives on the clean one while the over-bought one has it swept.

The most practical one: fake stars carry no downstream. No forks, no issues, nobody talking about you on X. On the real curve above, the stars sit next to related repos rising in the same window and hands-on threads on X. That is what investors and users actually go and check.

05 · Reporting it

How to report the number to your board and investors

Star growth happens almost entirely off-platform, with group-chat reshares in between. Attribution precise to a single post is not achievable — forcing it means making numbers up.

The honest, persuasive framing: take the campaign window as the boundary — stars went from X to Y inside the window, velocity at some multiple of the pre-window rate, falling back to so much after — and list the same-window product releases and official pushes as they happened. Every number can be re-checked against a third-party archive like the Wayback Machine. That is exactly how we write client reports.

One handy tool for your own records: the repo's Insights has a Traffic panel that splits visits by referrer — how many came from X, how many from Reddit. Only repo admins can see it, and it only keeps the last 14 days, so screenshot it regularly during a campaign. Be clear about its boundary too: it watches who came to look, and no tool can watch the step from looking to starring — so it serves as an internal record, while third-party archives like the Wayback Machine remain the evidence you show outside.

Got an open-source project with a release date coming? Bring the repo and the timeline — start a campaign consult and we'll draft the X playbook for it. As for what the star curve ends up looking like: see you in the archive in three months.

Topics

Put an X campaign on your next release date

Tutti connects vetted 𝕏 creators with brands; rosters are built to your release cadence, concentrated into one window, and measured on effective exposure end to end.