Refolk
PlaybookInvesting and deal sourcing

The Pre-Round OSS Scan: From Repository Momentum to a Ranked Deal List

You will run a weekly ecosystem scan that outputs a ranked, contactable list of company-backed OSS projects showing pre-round momentum, with vanity signals filtered out.

12 min readLast reviewed September 10, 2026Read as Markdown

Sourcing an open source startup after it announces a round means you are already in a priced auction. This guide is a repeatable weekly scan for early-stage investors, platform and talent partners, and angels who want to reach company-backed open source founders while their repository is still climbing. It turns the whole ecosystem into a ranked, contactable pipeline, filtered so that source-available projects and bought stars never waste a call.

The method assembles four public building blocks that exist separately but were never joined into one procedure: relative-growth ranking, a license-class filter, a company-backing test, and a funding-status check. What follows is that assembly, in order, with thresholds, timings, and what a good result looks like at each stage.

Why the pre-round window is real and roughly twelve months wide

The window exists because startup GitHub activity is not flat. A peer-reviewed study by Conti, Peukert, and Roche, published in Organization Science, linked data on 160,065 US startups from Crunchbase to their activity on GitHub and found that startups accelerate their activity on the platform in the twelve months prior to raising their first financing round, and that the intensity of that involvement declines in the twelve months after.

That single finding shapes everything below. You are trying to catch a rising signal, not a risen one, which is why cadence matters. A quarterly leaderboard tells you who has already broken out. A weekly scan puts you in the accelerating phase, before the round is announced and the term sheet competition arrives.

The same study delivers the first filter for free. Investors do not react to cosmetic changes that startups add to the often nontechnical documentation of their codebase. Readme churn is not a signal. A commit graph can look busy while only documentation moves, so commit count alone overstates momentum. Weight code and pull request events, not raw commits.

160,065
US startups linked from Crunchbase to their GitHub activity
The Conti, Peukert, and Roche study is the empirical basis for the pre-round acceleration signal.

There is a second reason the window closes fast. The adoption-to-revenue gap in open source is enormous, so the moment a project has commercial traction is not the moment it has revenue. MongoDB's S-1 states that Community Server had been downloaded over 30 million times since February 2009, against a base analysts pegged at more than 4,300 customers. That is roughly 0.01 percent penetration. Most open source companies monetize less than 5 percent of their download base, and in some cases less than 1 percent. Momentum shows up in the repository long before it shows up in a funding round.

What data sources you scan and what each proves

You scan three public sources, and each answers a different question. The GitHub event timeline tells you what is moving. The OSI and SPDX license lists tell you whether a project is fundable open source or defensive source-available. Public funding records tell you whether a company is still pre-round.

The GitHub event timeline is a record of the public GitHub activity stream, available as a BigQuery public dataset and through downloadable archives. It includes public issues, releases, stars, pull requests, and commits, is automatically updated every hour, and has archives available starting 12 February 2011. The BigQuery free tier processes one terabyte of data per month free of charge, which covers a trailing 90-day query if you select only the columns and event types you need.

For ranking logic, the ROSS Index published by Runa Capital is the reference. It ranks repositories by their maximum star growth rate over all 90-day periods ending within the target quarter, and the observation period can begin only when the repo has 1,000 or more stars. Runa built it around companies it invested in early, including n8n, Nginx, MariaDB, Twenty, and Mastra. For community-health signals, CHAOSS, the Linux Foundation's metrics project, supplies the definitions you use to separate real growth from vanity.

The three-source stack

  1. Funding records
    Is the company still pre-round, or already raised?
  2. License lists (OSI, SPDX)
    Is this fundable open source or defensive source-available?
  3. GitHub event timeline
    What is moving right now, and how fast?
Each layer answers a different question, from what is moving to whether it is reachable.

The scan, start to finish

Run the eight steps below in order. The ordering is deliberate: sources disagree, and the resolution matters. The academic signal implies leading with acceleration in activity, ROSS leads with star growth, and CHAOSS would lead with community-health filtering. Lead with growth-rank first and health-filter second, so you never try to health-score the whole of GitHub.

The weekly pre-round OSS scan

  1. Pull the raw event stream
    Query the public GitHub event timeline for star, pull request, fork, and release events over a trailing 90-day window. Deduplicate to a repo list with per-repo weekly star and contributor deltas. Setup takes one to two hours, then it runs weekly.
  2. Rank by relative growth, not absolute
    Admit only repos that have crossed 1,000 stars, then rank by maximum 90-day star growth rate. Output a top-N candidate list ordered by relative momentum. Under an hour.
  3. Filter by license class
    Check each repo's LICENSE against the OSI and SPDX lists and split into OSI-open, source-available, and no-license. Tag every candidate from the file, not the README. About an hour.
  4. Confirm company backing
    Keep only repos owned by a commercial org whose product is closely tied to the repository and that is not acquired or public. Map each survivor to a legal entity. One to two hours.
  5. Discount vanity, confirm real momentum
    Compute contributor density per 1,000 stars, external-PR share, 180-day retention, and Bus Factor, then run star-anomaly flags. Produce a real-growth score and drop momentum traps. Two to three hours.
  6. Check funding status
    Cross-reference public funding records to exclude already-raised rounds and confirm pre-round status. Keep only pre-round entities. About an hour.
  7. Resolve a reachable founder
    Identify the founder or lead maintainer and a contact path. Ensure each row carries a named, contactable person. One to two hours.
  8. Publish the ranked list
    Output ranked, contactable, filtered rows as the weekly deliverable, growth-rank first and health-filter second. About thirty minutes.

The full cycle runs in a day of analyst time in the first week and far less once the event query is automated. The judgement-heavy stages are backing confirmation and vanity discounting; budget your attention there.

Ranking on relative growth instead of totals

Rank on the maximum 90-day star growth rate among repos that have crossed 1,000 stars, never on total stars. Absolute counts favour old repos, so a five-year-old project with 40,000 stars will outrank a genuine breakout that is doubling.

This is the ROSS quarterly logic, and it exists for exactly this failure. ROSS itself switches to absolute new stars only for its annual report; for pre-round timing you want the relative rate, because relative growth is what correlates with the acceleration phase the academic study identified. The 1,000-star floor is not arbitrary either. It filters out the long tail of tiny repos where a single Hacker News post produces a growth rate that means nothing.

A caution about comparable lists: Accel launched Open100 in 2020 as a similar ranking but with no measurable methodology and no update period. A list you cannot reproduce or re-run on a schedule is a snapshot, not a pipeline. The value of this procedure is that you run it yourself, weekly, with thresholds you control.

A quarterly leaderboard tells you who has already broken out. A weekly scan puts you in the accelerating phase.

The license fork: OSI-open versus source-available

License class is a fundability fork, not a footnote. Trust the LICENSE file and its SPDX identifier, never the README, because a project can call itself open source while shipping a license that is not.

The Open Source Initiative defines open source through ten criteria, including free redistribution and source code that must be included or readily available. Permissive licenses like MIT and Apache 2.0 pass. Copyleft licenses like AGPLv3 pass too. Source-available licenses like the Business Source License, SSPL, and RSALv2 allow source inspection but impose restrictions, such as prohibiting commercial hosting, that make them non-OSI-compliant.

License classExampleOSI-open?
PermissiveMIT, Apache 2.0Yes
CopyleftAGPLv3 (Grafana, 2021)Yes
Source-availableBSL (Terraform), SSPL/RSALv2 (Redis, 2024)No

The moves tell a story. MongoDB relicensed to SSPL in October 2018. Redis abandoned the BSD license in favour of SSPL and RSALv2 on 20 March 2024. HashiCorp's Terraform, Couchbase, CockroachDB, and Sentry use BSL. Grafana Labs relicensed its core projects from Apache 2.0 to AGPLv3 in 2021. Companies trade OSI-compliance for monetization once a small fraction of downloads pay, so a source-available license usually signals a defensive posture from a company already thinking about capturing revenue, not the early community momentum you are hunting. Note the exception: BSL reverts to an open source license after a set period, often four years, and that eventual license must be GPL-compatible, so a young BSL project is not automatically disqualified but does deserve a closer read of intent.

Discounting vanity, confirming real momentum

Stars are the cheapest and most gamed metric, which is precisely why relative growth plus anomaly-flagging beats any raw leaderboard. CHAOSS explicitly classifies stars among vanity metrics. Confirm momentum with signals that are harder to fake.

Compute four things for each candidate:

  • Contributor density per 1,000 stars. Total contributors normalized against stars. This is the denominator that exposes a bought star count, because bots add stars but not contributors.
  • External pull request share. Cross-org PRs prove that people outside the company are building on the project, which is the community traction investors underwrite.
  • 180-day contributor retention. Track early contributors, those who made their first contribution within the first 180 days of the repository's creation, and whether they stayed.
  • Bus Factor, or Contributor Absence Factor. The smallest number of people who make 50 percent of contributions. A value of one or two means fragility, not a company.

Then run the star-authenticity test. Each starring event is evaluated against three signals: new account age, empty profile, and temporal burst. Events that trigger two or more of these are flagged as anomalous. If a large share of a repo's recent stars are anomalous, discard the repo regardless of its growth rate.

Momentum quadrants

High contributor densityLow contributor density
Dormant
Skip; no momentum and thin community.
Bot spike or hype trap
Run the anomaly test; two or more flags means discard.
Slow-burn healthy project
Watch; real community but not accelerating yet.
Real breakout
Prioritise; growth and community both moving together.
Low star growthHigh star growth
Cross star growth against contributor density to separate real breakouts from momentum traps.

This is the stage where a scan earns its keep. A leaderboard hands you the top-left and top-right of that matrix mixed together. The four metrics above tell you which is which.

Resolving the founder behind a fast-moving repo is the slowest manual step, because a GitHub org handle is not a person and a maintainer is not always the founder. This is where Refolk removes friction: you describe the person by role, stage, and repository signal in plain English and get contactable founders back, so steps four and seven collapse into one query rather than an afternoon of cross-referencing.

How this goes wrong: seven false positives

Most of the value in this procedure is in what it rejects. Each failure mode below is a false positive that looks fundable until you run the stated check.

Failure modeWhat it looks likeThe check
Bot star campaign5,000 stars in a week, no PRsAnomaly test; 2+ flags means discard
Docs churn as momentumBusy commit graph, only docs changeFilter to code and PR events, not commit count
Source-available mislabelledREADME says open source, LICENSE is BSLTrust the SPDX ID, not the README
Single-maintainer projectHigh stars, Bus Factor of 1Compute Contributor Absence; 1 to 2 is fragile
Absolute-count bias40k-star old repo outranks a breakoutRank on relative 90-day growth
Post-raise activityCommit surge is the post-round hiring burstConfirm no announced round before contact
Personal, non-company repoHobby project, no legal entityApply the product-tied, not-acquired test

Two of these deserve extra weight. The post-raise trap is subtle because acceleration is exactly what you are looking for, and a hiring burst after a closed round produces the same commit surge. The academic finding that activity declines after funding is your defence, but only if you confirm no announced round before you reach out. The source-available trap is common because relicensing is a live trend; treat the LICENSE file as ground truth and the README as marketing.

The talent geography you will miss with a US-only scan

Run the scan across the US and Europe, not the US alone. Refolk's index of professional profiles shows the founder pool is real outside the US, and English-first leaderboards under-cover it.

number: 4.5x
label: US OSS founders versus the UK in Refolk's index
note: 256 founders tagged to open source in the US, against 61 in Germany and 57 in the UK.

Questions practitioners ask

Where do I get the raw GitHub data for a weekly scan?

Use the public GitHub event timeline, which is available as a BigQuery public dataset and updated every hour, with archives going back to February 2011. It includes stars, pull requests, forks, releases, and commits. The BigQuery free tier processes one terabyte of data per month at no charge, which is enough for a trailing 90-day query if you select columns carefully rather than scanning full tables.

Why rank on star growth rate instead of total stars?

Absolute counts favour old repos, so a five-year-old project with 40,000 stars will outrank a genuine breakout. The ROSS Index method admits only repos that have crossed 1,000 stars, then ranks by the maximum 90-day star growth rate over the target window. Relative growth is what you want for pre-round timing because it surfaces the rising signal rather than the accumulated one.

How do I tell a real open source startup from a source-available one?

Read the LICENSE file and its SPDX identifier, not the README. OSI-open licenses like MIT, Apache 2.0, and AGPLv3 pass the Open Source Initiative's ten criteria. Source-available licenses like BSL, SSPL, and RSALv2 allow inspection but restrict commercial use, so they are not OSI-compliant. A source-available license usually signals a defensive monetization posture, not early community momentum.

What separates a vanity signal from real momentum?

CHAOSS classifies stars as a vanity metric because they are cheap and gameable. Real momentum shows up in contributor density per 1,000 stars, external cross-org pull request share, retention of contributors who joined in the first 180 days, and a Bus Factor above one or two. Run the star-anomaly test on new account age, empty profile, and temporal burst; two or more flags means discard.

How do I confirm a project is still pre-round?

Cross-reference public funding records before you contact anyone. The academic evidence shows GitHub activity declines in the twelve months after a first round, so a commit surge you catch could be the post-raise hiring burst rather than a pre-round build. Confirm there is no announced round tied to the legal entity you mapped in the backing step, or you will pitch a company that has already closed.

Should I limit the scan to US companies?

No. Refolk's index shows 256 US OSS founders against 61 in Germany and 57 in the UK, a 4.5x gap, but the European pool is real and under-covered because leaderboards that filter on English descriptions miss it. Run the scan across the US and Europe and keep license and backing filters identical across regions so the ranked output stays comparable.

Try it on the search you came here for

Stop building boolean strings. Just describe the person.

Type one sentence. I plan the search, read GitHub, public LinkedIn and Crunchbase records, and the open web as it is right now, and hand back a ranked list with the reason next to every name.

  1. 01Describe them

    One plain sentence. Role, city, stack, stage, whatever matters to you.

  2. 02I read the web live

    GitHub, public LinkedIn and Crunchbase records, the open web. Not a database that went stale last quarter.

  3. 03You read the shortlist

    Ranked, with the reasoning under every name. Open a profile, ask a follow-up, narrow it down.

  • No boolean, no filters, no seat to buy. One box.
  • Read at search time, so a profile updated yesterday counts today.
  • Every step visible as it runs, every name with its reason.

500 free credits on sign-up. No card, no demo call. See real searches.

Read next