learn-value-investing-with-phoebe / Analyst session 7 of 10
Learn Value Investing with Phoebe · Analyst session 7 of 10

How often fast growth lasts

Every discounted cash flow you built in sessions 4 to 6 carried a growth rate, and you chose it by looking at one company. Tonight we look at a thousand. The Base Rate Book followed the largest companies in the world since 1950, dead ones included, and measured how fast they actually grew, how wrong the forecasts were, and how quickly a good run faded. Then we compute our four filers' own growth from their 10-K facts and learn why they cannot be dropped straight onto that distribution. The aim is not a lower growth number. It is a wider, more honest range.

🟡 Analyst Analysts, finance and data people who forecast growth for a living Python, standard library only 45 min
0-3 · Welcome 3-18 · Base rates, narrow forecasts, the fade 18-40 · Build-along: four filers' growth, placed 40-45 · Q&A
Part 0

Where we start

In Analyst session 6 you found that growth and the discount rate move the answer more than anything else. That makes the growth rate the input most worth checking against something other than your own story about the company. A forecast built from the company's own history is the inside view. The outside view asks a plainer question first: of all the companies that looked like this one, how fast did they grow, and how many kept it up? Start there, then adjust for what is genuinely different about the business in front of you.

🎫 Clear all three quiz questions to stamp your passport Live = presented in the 45 minutes Self-study = the full depth, after class ★ Build-along = everyone builds

Two kinds of number tonight, kept apart. The base rates come from Mauboussin, Callahan and Majd's Base Rate Book, read at source in a hosted copy of the Credit Suisse PDF; they are inflation-adjusted. The four filers' growth rates are computed from SEC XBRL company facts, read from a public mirror; they are nominal. Nothing here says whether any of the four companies is worth buying, and no market price appears.

★ What you walk out with tonight. The three base rates that should sit beside any growth forecast you write, the one fact about analysts' forecasts that should widen every range you draw, a fade rule you can state in one sentence, and a twenty-five-line Python script that computes each filer's long-run owner earnings growth and prints it with the caveat that stops anyone comparing it to the wrong thing.

Part 1 · covers the outside view

The outside view

5 min live

The Base Rate Book took the top 1,000 global companies by market capitalisation from 1950 to 2015, across all sectors and about 60 percent of world market value, and kept the companies that later disappeared. That last choice matters: about half of all public companies cease to exist within ten years of listing, and a sample of today's survivors would quietly drop them. Figures are adjusted for inflation to 2015 dollars. The result for three-year sales growth is a distribution, and its shape is the lesson.

THREE-YEAR SALES GROWTH, REAL, TOP 1,000 GLOBAL COMPANIES, 1950-2015 shape sketched; the three numbers are the book's median 5.4% mean 8.1% 23% shrank, real, over 3 years a few fast growers pull the mean up standard deviation 18.7 points -20% 0% +20% +40% compound annual sales growth over three years, inflation-adjusted Dead companies included. Growth rates and their spread both fall as companies get bigger.
🔍 Click to zoom - the typical company sits at the brass line, not at the mean; the tail is a handful of companies, not a destination
LiveInside view against outside view3 min▶

The inside view builds a forecast from the specifics: this company's products, its last five years, the management's plan. It is detailed, it feels well informed, and it is where almost every growth assumption comes from. The outside view ignores the specifics at first and asks what happened to a large reference class of similar cases. Its answer is blunt, and it is usually less exciting.

The working method is to do both, in that order. Start from the base rate: real sales growth of 5.4 percent a year at the median, with a standard deviation of 18.7 points around it, and lower and tighter for the biggest companies. Then move away from it only as far as the evidence about this business justifies, and write down why. A forecast of 15 percent real growth for a decade is not forbidden. It is a claim that this company will sit far out in the right tail, and it needs an argument to match.

Size is the first adjustment. The book finds that both the level of growth and its spread decline as companies get larger, so a very large company's reference class is narrower and slower than the full distribution in the figure.

Self-studyWhy the median beats the mean here3 min▶

When a distribution has a long right tail, the mean is dragged toward the tail by a small number of extreme values. The median is the middle company: half grew faster, half slower. Here the mean is 8.1 percent and the median 5.4 percent, a gap of 2.7 points a year, which compounds into a large difference over a ten-year first stage.

If you pick one company and want the growth rate most likely to describe it, the median is the better anchor, because most companies are nowhere near the tail. The mean is the right number for a different question, the average growth across a whole portfolio of companies, where the few fast growers really are in the pot. Using the mean as the default for one company quietly assumes it has a fair share of the tail's luck built in.

The spread tells you as much as the centre. A standard deviation of 18.7 points means two companies one standard deviation either side of the median differ by more than 37 points a year. That is the honest width of "a typical company", before anything specific is known.

Real world

The companies that are not in a survivor sample. The Base Rate Book's sample keeps the companies that were later acquired, merged or went bust, and the book reports that about half of all public companies cease to exist within ten years of listing. It also finds that 23 percent of companies had negative real sales growth over three years, and 20 percent shrank over five. A growth assumption built only from companies that are still around today has silently removed the left side of this distribution before the analysis began.

Part 2 · covers forecast width

Forecasts are too narrow

5 min live

The book compares analysts' forecasts of three-year net income growth with what companies had actually done. The standard deviation of the forecasts was 19.2 percent. The standard deviation of actual past growth was 34.6 percent. In the book's words, the forecasts were "too optimistic and too narrow": they leaned high, and they imagined far less dispersion than reality delivers. Earnings growth, the book adds, is not very persistent.

THREE-YEAR NET INCOME GROWTH: WHAT ANALYSTS EXPECT, WHAT HAPPENS curves sketched; the two spreads are the book's forecasts: SD 19.2% what happened: SD 34.6% 31% had lower net income over 3 years one forecast SD one actual SD The forecast curve also leans to the right of the actual one: too optimistic as well as too narrow.
🔍 Click to zoom - the gap between the two widths is the confidence nobody earned; a range built from forecasts is too tight before you start
LiveWhat 19.2 against 34.6 does to your range3 min▶

A standard deviation of 34.6 points for actual three-year earnings growth means outcomes scatter far more than any single forecast suggests. Forecasts with a spread of 19.2 points are, on average, behaving as if the future were a little over half as uncertain as it turns out to be. Lean optimistic on top of that, and the typical forecast both sits too high and is held with too much confidence.

For a valuation, the practical consequence is about the range, not the point. In Analyst session 6 you built a range from the discount rate plus or minus one point and growth plus or minus two. If your growth input came from forecasts, those two points are almost certainly too few for earnings, because the forecasts you started from were narrower than the world. Widen the growth band, or at least write down that it is a floor on the uncertainty, not a measure of it.

The left tail is real too. The book finds 31 percent of companies had lower net income after three years, 29 percent after five, and 24 percent after ten. Roughly one company in four earned less a decade later. Any bear case that never lets earnings fall is not a bear case.

Self-studySales growth persists more than earnings growth3 min▶

The book reports that sales growth is more persistent than earnings growth. Earnings sit at the bottom of the income statement, after costs that do not move one for one with sales, so a small change in sales or margins can produce a large swing in profit. That is why the earnings distribution in the figure is so much wider than the sales distribution in Part 1, and why a growth forecast anchored on sales is usually steadier than one anchored on last year's profit.

Growth also explains less of shareholder returns than a story might suggest. The book reports a correlation between sales growth and total shareholder return of 0.20 over one year, 0.25 over three years and 0.28 over five. Positive, rising with the horizon, and still modest: growth matters, but it is far from the whole explanation, which is one reason the price paid for that growth matters so much. The book also reports that median sales growth correlates with US GDP growth at 0.66.

For owner earnings, which sit even closer to the bottom line than net income because capital spending is subtracted too, expect less persistence still. The one-off years you met in Analyst session 2 are the same effect seen up close.

Real world

One in four, ten years on. In the Base Rate Book's sample of the world's largest companies, 33 percent had negative real net income growth in a given year, and 24 percent had lower net income ten years later. These are not small, fragile firms; they are the top 1,000 by market value at the time. If a quarter of giants can earn less after a decade, a valuation that assumes steady growth for ten years needs a reason why this company is in the other three quarters.

Part 3 · covers fading growth, tested

Fade the growth

5 min live

If high growth rarely lasts and forecasts lean high, the sensible default is to let any above-normal growth fade toward a modest long-run rate. The bench's rung 4 does exactly that: start from the ten-year mean owner earnings, grow it at half its own past growth, capped at 8 percent and floored at -5, and fade that rate in a straight line to 2.5 percent over five years. Then test it, the way every rung is tested: hold out the last years, forecast them from what was known at the start, and measure the miss.

THE GROWTH RATE EACH RUNG ASSUMES, YEAR BY YEAR shapes, not values: g0 differs for each filer anti-lever: last year's earnings at the best single past year's growth, every year g0 2.5% 0% rung 4: 2.5% from year 5 on rungs 2 and 3: flat, no growth g0 = half the past growth, capped 8%, floored -5% year 0 year 5 year 10 Past growth here is the compound rate between the two five-year halves of the last ten years.
🔍 Click to zoom - the fade spends its optimism early and settles at an economy-like rate; the anti-lever never lets go of its best year
LiveWhat the ladder found, stated as found4 min▶

At the default five-year hold-out, mean absolute miss across the four filers: rung 4, the fade, missed by 47.7 percent; rung 3, the flat ten-year mean, by 50.2 percent; rung 2, the flat five-year mean, by 47.4 percent; last year's net income by 70.4 percent; and the anti-lever by 19,614.8 percent. Fading half the past growth helped a little over holding the ten-year mean flat, and the five-year mean still edged it.

The more important finding is the direction. Every honest rung undershot. At five years the bias equals minus the mean miss: all four companies' owner earnings rose sharply after 2020, and no rule built from the years before saw it coming. Exxon Mobil is the clearest case: from 2020, the fade forecast 3.74 dollars a share a year against an actual 8.87, a miss of 57.8 percent.

So the base rates in Parts 1 and 2 do not simply argue for lower growth. Over this window, lower would have been worse. They argue for wider ranges: outcomes scatter more than forecasts do, in both directions, and a range that cannot contain a boom is as wrong as one that cannot contain a bust. The fade is a sensible centre; it is not a forecast you should hold tightly.

Because rung 4 starts from rung 3's base, its value at the same sliders equals rung 3's in the bench; the fade changes the forecast of the hold-out years, which is what the ladder scores.

Self-studySurvivorship, and why four survivors teach little about base rates3 min▶

Our four filers grew their owner earnings per share at between 3.1 and 9.2 percent a year over their runs: Caterpillar 9.2, Exxon Mobil 8.1, Johnson & Johnson 7.3 and Procter & Gamble 3.1. Those are real numbers, computed in the build-along, and they are almost useless as a base rate.

First, all four are long-lived giants. They were chosen because their filings are long, and a long filing history exists only for a company that survived. Survivorship removes exactly the cases the Base Rate Book was careful to keep: the half of listed companies that disappear within ten years. Four survivors describe what happened to four survivors.

Second, the units differ. The filers' rates are nominal and include inflation; the book's are inflation-adjusted. They measure owner earnings per share over ten to fourteen years, not sales over three. A nominal 9.2 percent and a real 8.1 percent mean are not the same kind of number, and putting them on one axis invites a comparison that cannot be made.

What the four histories are good for is a sanity check on one company: does a forecast for Procter & Gamble far above its own 3.1 percent nominal history have an argument behind it? The base rate tells you how unusual a forecast is across companies; the company's own history tells you how unusual it is for that company. You want both, and you want to know which one you are reading.

Real world

Where the fade landed, company by company. At the five-year hold-out the fade's misses were: Caterpillar from 2020, 8.20 forecast against 17.94 actual (-54.3 percent); Exxon Mobil from 2020, 3.74 against 8.87 (-57.8 percent); Johnson & Johnson from 2020, 5.53 against 10.21 (-45.9 percent); Procter & Gamble from 2021, 3.96 against 5.90 (-32.9 percent). Four undershoots, all in the same direction, in the same years. When every method misses the same way at the same time, the lesson is about the period, and about range width, not about picking a cleverer method.

Build-along

Compute your filers' history, then place it

★ 22 min · everyone builds

Python 3, standard library only. The script reads the data file vi-sample.js, the same SEC XBRL facts the bench uses, stored as millions of dollars times ten and shares in millions times a hundred. It computes owner earnings per share for every year, averages the first five and the last five years of each run so one odd year cannot set the answer, and turns the two averages into a compound growth rate. Then you place each result against the base rates on paper, with the caveat that keeps the comparison honest.

PLACING FOUR HISTORIES AGAINST A BASE RATE top: your filers, nominal owner earnings per share, first five vs last five years P&G 3.1% J&J 7.3% Exxon 8.1% Caterpillar 9.2% 0% 10% a wall: nominal vs real · owner earnings vs sales · 10 to 14 years vs 3 median 5.4% mean 8.1% 0% 10% bottom: Base Rate Book, three-year real sales growth, 1950-2015, dead companies included Exxon's 8.1% and the book's 8.1% mean are the same digits and different quantities. That is the trap.
🔍 Click to zoom - the scales look shared and are not; every placement you write must cross the wall in words, not by lining up dots

Step 1 · Load the sample. The data file is JavaScript that assigns one JSON object. Read the text after window.VI_SAMPLE = and let the JSON decoder stop at the end of the object.

★ Step 1 · loadimport json PATH = "assets/vi-sample.js" # adjust to where you saved the file def load_sample(path): text = open(path, encoding="utf-8").read() start = text.index("window.VI_SAMPLE = ") + len("window.VI_SAMPLE = ") data, _ = json.JSONDecoder().raw_decode(text[start:]) return data["companies"]

Step 2 · Owner earnings per share, every year. Net income plus D&A minus all capex, divided by diluted shares. Undo the storage scaling: dollar fields divide by 10, shares by 100. This is the all-capex approximation from Analyst session 1, with its known errors.

★ Step 2 · per sharedef oe_per_share(c): # stored as millions x10 and shares millions x100 return [(ni + da - cx) / 10 / (sh / 100) for ni, da, cx, sh in zip(c["ni"], c["da"], c["capex"], c["sh"])]

Step 3 · First five, last five, and the rate between them. The centre of the first five years and the centre of the last five are n - 5 years apart, so that is the compounding period. Averaging five years at each end is the normalising habit from Analyst session 2.

★ Step 3 · the historydef history(c): oe = oe_per_share(c) first, last = sum(oe[:5]) / 5, sum(oe[-5:]) / 5 years = len(oe) - 5 # centre of first five to centre of last five cagr = (last / first) ** (1 / years) - 1 return first, last, years, cagr

Step 4 · Run it for all four filers. What it printed when these pages ran it:

★ Step 4 · run, and what it printedfor c in load_sample(PATH): first, last, years, cagr = history(c) print(f"{c['name']:18} {c['fy'][0]}-{c['fy'][-1]} {first:5.2f} -> {last:5.2f}" f" {cagr:5.1%} a year over {years} years") Caterpillar 2007-2025 5.21 -> 17.94 9.2% a year over 14 years Exxon Mobil 2011-2025 4.08 -> 8.87 8.1% a year over 10 years Johnson & Johnson 2010-2025 4.69 -> 10.21 7.3% a year over 11 years Procter & Gamble 2008-2026 3.84 -> 5.90 3.1% a year over 14 years

Step 5 · Place each history, in words. No code: a worksheet. For each filer, write where its rate would sit against the Base Rate Book, and then the sentence that says why the placement is only rough. Inflation over these years is not in the source map, so do not subtract a number you have not sourced; say which way the adjustment goes.

★ Step 5 · placement worksheetBase rates (real, 3-year sales CAGR, top 1,000 global, 1950-2015): median 5.4% mean 8.1% standard deviation 18.7 points growth and its spread fall with size For each filer: Company: ____________ nominal owner earnings/share growth: ____ % 1. Real growth would be lower than this by inflation. Direction: ______ 2. Relative to the median, before that adjustment: above / near / below 3. Owner earnings are less persistent than sales: does that widen or narrow the range you would put around this rate? ______________ 4. Survivor? yes / no. What did the sample leave out? ____________ 5. One sentence a reader of your valuation should see: "______________________________________________________________"

Step 6 · Feed it back into a range. Take the filer whose history you placed most confidently. Write a low, central and high growth rate for its first stage, and justify the width with the Part 2 fact, not with the company's own past. Then check whether your low case ever lets owner earnings fall: roughly one large company in four earned less ten years later.

★ Step 6 · from base rate to rangeFiler: ____________ low growth ____ % because ____________________________________ central ____ % because ____________________________________ high growth ____ % because ____________________________________ Width (high - low): ____ points. Forecasts have a spread of 19.2 vs 34.6 actual. Is my width honest? ____ Does my low case ever let owner earnings fall? yes / no

Same digits, different quantities. Exxon Mobil's history and the Base Rate Book's mean both print as 8.1 percent. One is nominal owner earnings per share over ten years for one survivor; the other is real three-year sales growth across a thousand companies, dead ones included. Whenever two numbers match this neatly, check the units before you check the conclusion.

Homework

Before Analyst session 8

30 min
  1. Change the window. Rerun Step 3 with three-year averages at each end instead of five. Which filer's rate moves most, and which single year is responsible?
  2. Write the outside view first for a company you know: its size, its reference class, and the base rate you would start from before looking at its own history. Then write the inside view and the one fact that justifies any gap between them.
  3. Widen a range you already built. Take your Analyst session 6 sensitivity grid and redo the growth band using the Part 2 finding. How much wider is the value range, and does the central value change?
  4. List the dead. Name three companies in an industry you know that no longer file on their own, through acquisition, merger or failure. Write one line on how a sample of today's survivors in that industry would mislead a growth forecast.
Check yourself

Three questions

Clear all three and Analyst session 7 gets stamped in your passport.

1 · You are forecasting growth for a very large company. What does starting from the outside view mean?

The outside view begins with what happened to many similar cases, and for a single company the median is the better anchor than a mean pulled up by the tail. The company's own story then adjusts that anchor, with reasons written down.

2 · Analysts' forecasts of three-year net income growth had a standard deviation of 19.2 percent; actual past growth had 34.6 percent. What does that mean for a valuation range?

The book calls the forecasts "too optimistic and too narrow". Narrowness is about width, not just level: outcomes scatter far more than forecasts allow, so a range anchored on forecasts understates the uncertainty before any other error is added.

3 · Rung 4 fades half the past growth to 2.5 percent over five years. At the five-year hold-out it missed by 47.7 percent against 50.2 percent for the flat ten-year mean, and every honest rung undershot. What is the right lesson?

The fade did a little better than holding the ten-year mean flat, and the five-year mean edged it at 47.4 percent. All honest rungs undershot because earnings rose after 2020; lower growth would have missed by more. The anti-lever missed by 19,614.8 percent. The honest response is a wider range around a sensible centre.

Sources covered

What this session teaches, and where it came from

✓Sample design, dead companies included, about half cease to exist within ten years; 3-year sales CAGR mean 8.1%, median 5.4%, SD 18.7%; 23% and 20% shrank; growth and spread fall with size; forecasts SD 19.2% vs actual 34.6%, "too optimistic and too narrow"; 31%, 29%, 24% lower net income at 3, 5, 10 years; sales more persistent than earnings; correlations 0.20, 0.25, 0.28 and 0.66Mauboussin, M., Callahan, D. and Majd, D., "The Base Rate Book", Credit Suisse, 2016 (read at source, hosted copy)
✓Four filers' owner earnings growth: 5.21 to 17.94, 4.08 to 8.87, 4.69 to 10.21, 3.84 to 5.90; the ladder at the five-year hold-out, rung 4 47.7% vs rung 3 50.2%; the per-filer fade missesSEC EDGAR XBRL company facts, read from a public mirror after the SEC refused the build machine; computed, and recomputed by the build-along script
◐Nominal against realNamed as a caveat; no inflation series is sourced, so no real-terms conversion of the filers' rates is claimed
◐A widely quoted small-company persistence figureCirculates in summaries of the book; its table could not be read cleanly at source, so it is not used
◐How long high returns on capital lastAnalyst session 8; moats as economics are taught in Economics Foundations session 6, linked, not re-taught

Every fact on this page, and its verification tier, is recorded in the course's source map.

Analyst session 7 cheat sheet · pin this

Outside view firstStart from a reference class, then adjust for the specifics, in writing.
The base rate3-year real sales growth: median 5.4%, mean 8.1%, SD 18.7. Lower and tighter for giants.
Median for one companyThe mean is pulled up by a few fast growers in the tail.
Forecasts are too narrowSD 19.2% forecast vs 34.6% actual. Widen the growth band.
Fade, but widenHalf past growth to 2.5% over five years. A centre, not a certainty.
Check the unitsNominal vs real, earnings vs sales, survivors vs everyone.