← Quantery Blog

How to screen for self-funded growth

October 13, 2026 · 8 min readthesis-buildingcash-flowgrowth

Self-funded growth means a business is expanding while its own cash generation covers the investment behind that expansion. A useful stock screen looks for revenue growth, positive free cash flow, and restraint in debt and share issuance. Those rules won't prove where each dollar came from. They will separate growth backed by internal cash from growth that arrived alongside heavier outside financing.

That distinction matters because the revenue line can grow under very different arrangements. One company sells more through an existing operation and produces cash along the way. Another builds inventory, extends customer credit, opens facilities, and raises capital to keep going. Both report growth. Their funding claims are different, so the thesis should say which one it means.

What does self-funded growth mean?

Start with the cash flow, then check the claims on that cash.

Free cash flow is operating cash flow minus capital expenditures. It asks what remains after the business pays for the long-lived assets it bought during the period. The full derivation is in the guide to free cash flow. Positive free cash flow says the reported operation and investment program, taken together, left cash over.

That still doesn't settle the funding question. Cash is fungible. A company can produce free cash flow and borrow during the same period. It can issue shares for an acquisition while its existing operation remains cash-generative. It can also repay debt with cash accumulated years earlier. No statement line labels each dollar as the one that funded growth.

So use observable footprints instead. Revenue should advance. Free cash flow should be positive and meaningful relative to revenue. Total debt shouldn't jump by an amount that overwhelms the operating cash story. Diluted share count shouldn't rise enough to make issuance a hidden growth input.

Each measure answers a different question. Revenue shows expansion. Free cash flow tests whether the current business and capital program generated surplus cash. Debt and diluted shares show whether lenders or shareholders supplied more capital alongside that expansion. Don't merge them into a single opaque quality score before you've inspected the pieces.

See's shows the capital-light version

Berkshire Hathaway's history with See's Candies is a clean example of growth that required little incremental capital. It illustrates the business economics. It doesn't establish that a public-market screen will outperform.

Berkshire's 2007 shareholder letter says See's was bought in 1972 for $25 million when it had $30 million of sales, less than $5 million of pretax earnings, and $8 million of capital in the business. By 2007, sales were $383 million and pretax earnings were $82 million, while required capital had risen to $40 million. The letter says Berkshire had reinvested only $32 million over that span and See's had produced $1.35 billion of cumulative pretax earnings.

The useful relationship isn't just that sales and profit rose. Required capital grew by far less than the earnings stream. The business could fund its own needs and send the rest elsewhere. That is the strongest version of the self-funded-growth claim: expansion doesn't demand a matching pile of new capital.

A stock screen can't identify a brand like See's from those figures alone. It can look for the financial shape. Revenue rises, cash survives capital spending, and outside claims don't expand at the same pace. The filing review then asks why that shape exists and whether it can last.

What should the screen measure?

Measure sales against the same fiscal quarter a year earlier. An adjacent-quarter comparison can mistake seasonality for growth. Trailing and same-quarter comparisons explains why lag(field, 4) is the useful comparison in a quarterly filing series.

Use trailing free cash flow for the funding test. A single quarter can absorb an inventory build or a large capital payment and still belong to a sound year. Dividing trailing free cash flow by trailing revenue produces a free-cash-flow margin, which gives the cash surplus some scale. A small positive number and a substantial surplus shouldn't earn the same reading.

Then compare debt and diluted shares with their year-earlier values. Total debt catches borrowing without pretending cash is always available to net against it. Diluted shares catch issuance and employee awards that the basic share count can miss. Share count and dilution covers why weighted-average diluted shares are still a proxy for financing activity, rather than a cap-table ledger.

The shape below is illustrative. The bundled templates are the reference for exact fields, and the Quantery thesis documentation covers the DSL.

# "Growth funded by the business" (illustrative)
params:
  min_history: 5
  growth_floor: 0.05
  fcf_margin_floor: 0.05
  debt_change_ceiling: 0.05
  dilution_ceiling: 0.02

quality:
  flags:
    - { when: "history_periods < $min_history", flag: "short_history:{history_periods}" }

features:
  revenue_now: newest(revenue)
  revenue_prior: lag(revenue, 4)
  revenue_ttm: ttm(revenue)
  revenue_growth: if(revenue_prior > 0,
    revenue_now / revenue_prior - 1, null)

  fcf_ttm: ttm(free_cash_flow)
  fcf_margin: if(revenue_ttm > 0, fcf_ttm / revenue_ttm, null)

  debt_now: newest(total_debt)
  debt_prior: lag(total_debt, 4)
  debt_change_ratio: if(revenue_ttm > 0,
    (debt_now - debt_prior) / revenue_ttm, null)

  shares_now: newest(shares_diluted)
  shares_prior: lag(shares_diluted, 4)
  share_growth: if(shares_prior > 0,
    shares_now / shares_prior - 1, null)

criteria:
  sales_progress:
    rules:
      - { when: "is_null(revenue_growth)", score: 0, flag: no_sales_comparison }
      - { when: "revenue_growth >= $growth_floor", score: 1 }
      - { else: 0 }
  cash_funding:
    rules:
      - { when: "is_null(fcf_margin)", score: 0, flag: no_cash_margin }
      - { when: "fcf_margin >= $fcf_margin_floor", score: 1 }
      - { else: 0 }
  financing_restraint:
    rules:
      - { when: "is_null(debt_change_ratio) or is_null(share_growth)", score: 0, flag: no_financing_comparison }
      - { when: "debt_change_ratio <= 0 and share_growth <= 0", score: 2 }
      - { when: "debt_change_ratio <= $debt_change_ceiling and share_growth <= $dilution_ceiling", score: 1 }
      - { else: 0 }

gate:
  mode: strict

The thresholds are proposed research parameters. They aren't universal definitions of healthy growth. Their jobs are explicit: require some sales progress, demand a cash cushion, and allow only limited growth in outside claims. Keep them round. Move them in planned steps later.

The strict gate makes all three claims necessary. That is appropriate only if self-funding is the subject. If the thesis is broader growth quality, financing restraint may belong as a displayed flag or a scored preference. Strict and score gates encode different beliefs about whether strength can compensate for a weak dimension.

Where does this screen give false answers?

A growing business can consume cash for good reasons. Inventory may be built ahead of orders. Receivables may rise because new customers haven't paid yet. A factory can take cash now and produce revenue later. This screen will reject many such builders while the investment phase is under way. That is a scope choice, and it favors capital-light or mature operations.

Debt can rise for reasons unrelated to funding organic growth. A company may refinance near-term borrowings, acquire another business, or borrow before a planned payment. Looking at debt on two filing dates misses repayments and fresh borrowing between those dates. Open the cash-flow financing section and debt footnote before treating a passing score as settled.

Share count has similar wrinkles. An acquisition paid in stock can raise shares and revenue together. Buybacks can offset employee issuance, leaving the count flat even though both were large. A stable diluted count says dilution was contained on net. It doesn't say management avoided issuing shares.

Acquisitions create the hardest false positive. Revenue can step up, free cash flow can remain positive, and debt can stay within the proposed ceiling even though the company purchased the growth. Compare organic disclosures where the filing provides them, inspect goodwill and acquisition cash outflows, and read what goodwill says about past acquisition prices. Structured fundamentals can't turn acquired revenue into organic revenue by arithmetic.

How do you test whether self-funding matters?

Begin with a revenue-growth baseline. Add the free-cash-flow rule and record which companies disappear. Then add the financing-restraint rule and inspect the next set of exclusions. Keep the universe, dates, benchmark, reporting lag, and holding policy fixed. This is the incremental test described in how to judge whether a complex thesis adds value.

Read membership before performance. If the cash rule mostly removes one capital-heavy industry, the thesis may be selecting business models. If the financing rule mostly removes smaller companies, it may be acting as an indirect size or capital-access filter. Break out sector and size before attributing a return difference to self-funding.

Then run the versions walk-forward. Compare hypothetical returns, drawdown, and the distribution of event outcomes against the same benchmark. Every result excludes costs. Test nearby thresholds chosen before you inspect the curves, and preserve the versions that disappoint you. A result that survives only when debt growth is set to one exact boundary belongs to the boundary.

The final test is the one the screen can't automate. Open the filings for survivors and near misses. Ask what consumed cash, what the new borrowing funded, whether share growth came from compensation or a transaction, and whether revenue was purchased. Change the rules when those reads expose a bad proxy. Self-funded growth is a precise business claim once its compromises are visible. Quantery gives you the useful part: every compromise can stay in the thesis, where you can alter it and run the comparison again.

Want to try this on your own rules? Quantery is free for 14 days: the full app, no card required.

← All articles