J-Curve Calculator
The formula
What the j-curve tells you
The shape of fund economics: money flows out years before value flows back, so cumulative value dips like a J before harvesting lifts it.
Calculation: Linear capital calls vs value returning after the lag; crossover = J-curve bottom. Enter your inputs and every substitution is shown below the result.
Reading the result
Longer lags and heavier fees deepen the trough — early negative NAVs are arithmetic, not failure.
Rules of thumb: Typical venture funds cross cash-to-cash in years 6–9
Limitations and best practice
The model is an average path; delayed exits stretch the J indefinitely, and secondaries exist precisely to sell the trough.
This calculator gives an estimate based on standard formulas; it is not professional financial, medical, legal or engineering advice. Verify anything you plan to act on with a qualified professional and your own records.
Frequently asked questions
Why does my statement show losses every year early?
Can the J be flattened?
Source & methodology
Kaplan & Schoar (2005) private-equity performance.
J-Curve: what this tool answers
You are here because you need a specific number, and you want to see how it was produced before you rely on it. Searchers land on a J-Curve page for three reasons — to plan, to compare options, and to check that somebody else’s arithmetic is honest. This tool serves all three, and everything after the calculator explains the model instead of hiding it.
People rarely disagree about arithmetic; they disagree about assumptions that were never written down. Printing the substitution and the sensitivity ranking removes that category of disagreement for J-Curve.
There is a habit that separates people who get useful answers from Startup Metrics numbers: they decide what question the figure answers before they compute it. J-Curve answers “Years to cross back above zero?” — and nothing else, which is precisely why the result is trustworthy.
Nothing below is stock text pasted around a number: the worked example computes years to cross back above zero = 8.0 years from this tool’s own defaults, and the sensitivity section ranks the inputs that move the result — Expected final MOIC first, at ≈50.0 % of the headline for a ten-percent error either way in that input. Work down the page and by the end you could re-derive the result in a spreadsheet from memory.
Inside the J-Curve calculation: formula and every input
One formula, published in full: Linear capital calls vs value returning after the lag; crossover = J-curve bottom. Anything you can read, you can reproduce in a spreadsheet, and that reproducibility is the whole point of printing it rather than hiding it behind a button.
Fund commitment ($) (example value 38,500,000) is a numeric input whose unit is fixed by the label; a wrong unit is a wrong answer wearing a plausible disguise. This input feeds the formula directly; a defensible figure here is worth more than false precision anywhere else.
Expected final MOIC (×) (example value 2) is a quantity rather than a category — precision here is cheap and worth having. This input feeds the formula directly; a defensible figure here is worth more than false precision anywhere else.
Fund life (years) (example value 20) is a measured number in the unit named by the label; the formula does not convert for you. Use the value as of today, not as of the last time you looked — time fields drift silently.
Deployment/harvest lag (years) (example value 2) is a numeric input whose unit is fixed by the label; a wrong unit is a wrong answer wearing a plausible disguise. If the period is partial, decide whether you mean elapsed or planned time and keep that meaning across every field.
J-Curve on the example inputs: the complete substitution
Abstract formulas are hard to trust, so here is the complete substitution using the default inputs, written the way an examiner would want it. Starting figures: Fund commitment ($), Expected final MOIC (×), Fund life (years), Deployment/harvest lag (years). The computed years to cross back above zero comes out at 8.0 years, which the interpretation band labels “The J bottoms and crosses in year 8.0”.
- Capital is called linearly to $38,500,000; realizations start after the 2-year lag and reach $77,000,000 by year 20
- Crossover when cumulative realizations ≥ capital called → year 8.0
Deepest cumulative trough — $-6,416,667. Read next to the headline, this is the figure that shows the shape of the trade-off.
Trough as % of commitment — 16.7 %. This is the number experienced users quote when the headline alone would mislead.
Final cumulative gain — $38,500,000. Read next to the headline, this is the figure that shows the shape of the trade-off.
Overwrite any input above and every line of this example updates with it — the substitution is live, not a screenshot of somebody else’s numbers.
Scenario table: J-Curve at ±10 % and ±20 % of the key input
The honest version of any estimate is a corridor, and this one is cheap to produce: J-Curve was recomputed at 5 points along the dominant input, with every other field left untouched.
| Expected final MOIC setting | Years to cross back above zero |
|---|---|
| 80 % of the example value | 13.3 years |
| 90 % of the example value | 12.0 years |
| example inputs | 8.0 years |
| 110 % of the example value | 6.5 years |
| 120 % of the example value | 5.5 years |
Across 5 settings of Expected final MOIC, the result spans 5.5 years to 13.3 years. A decision that only works at one row of this table is a decision waiting for an input to move. Reproduce it in the form above by editing Expected final MOIC alone; the substitution steps will follow your figures exactly.
Sensitivity: which inputs change J-Curve the most
Generic advice says “it depends on your inputs”; this section says exactly how much. Each field was perturbed by ±10 % in isolation and the years to cross back above zero recomputed, so the ranking below is measured rather than asserted. It is the fastest honest answer to “what matters most in J-Curve?” — and it is specific to these defaults, because sensitivity moves with the starting point.
- Expected final MOIC: ten percent up gives 6.5 years, ten percent down gives 12.0 years — ≈50.0 % of the years to cross back above zero either way
- Deployment/harvest lag +10 % → J-Curve = 8.8 years · −10 % → 7.5 years (the years to cross back above zero shifts ≈9.4 %)
- Nudge Fund life by ±10 % and J-Curve lands between 7.8 years and 8.3 years (sensitivity ≈3.1 %)
Expected final MOIC is the dominant lever here: ten percent either way moves the result by about 50.0 %, from 6.5 years to 12.0 years. Measure that input from a document rather than from memory, and treat Deployment/harvest lag as the second priority (≈9.4 % per ten percent). The remaining fields can sit at safe defaults without materially changing the answer — knowing which is which is what separates a careful calculation from an anxious one.
Is your J-Curve good — reading the result bands
Nobody acts on a bare figure — they act on a figure with a comparison attached. The verdict attached to the default calculation — “The J bottoms and crosses in year 8.0” — is one band on a ladder your own figure may sit somewhere else on. How much of that band is luck? On Expected final MOIC alone ten percent either way covers 6.5 years to 12.0 years. The practical reading rules: read the band as a starting hypothesis, then test it: change the two dominant inputs by ten percent and see whether the verdict survives. Verdicts that survive stress are the ones worth acting on.
In Business & Entrepreneurship, J-Curve is one instrument in an orchestra: on its own it is a number, next to Deepest cumulative trough and Trough as % of commitment it becomes a diagnosis. The tools linked above exist so the headline never has to carry that weight alone.
Common mistakes with J-Curve (and the fix)
The model is an average path; delayed exits stretch the J indefinitely, and secondaries exist precisely to sell the trough. This calculator gives an estimate based on standard formulas; it is not professional financial, medical, legal or engineering advice. Verify anything you plan to act on with a qualified professional and your own records.
Using stale inputs. J-Curve is only as current as the numbers behind it — an estimate carried over from a previous season, rate table or report quietly biases every output. Re-measure the inputs first; that single habit fixes more bad J-Curve figures than any formula change.
One mistake is specific to this engine: assuming every input matters equally. The computation above shows Expected final MOIC dominating — a careful figure there beats false precision everywhere else.
Another is comparing across contexts: a J-Curve computed with one set of conventions should never be lined up against a figure computed with another. Check the inputs behind both before ranking them.
Six things to confirm before acting on J-Curve
- Check that every field the formula needs actually arrived from a document, not from recollection.
- Record the date and the inputs alongside the number so future-you knows what was assumed.
- Check Expected final MOIC before anything else: it is the measured dominant input, ≈50.0 % of J-Curve per ten percent.
- Compare the output against one published benchmark or a colleague’s independent estimate.
- Verify each input against its original source document, not memory.
- Repeat the ±10 % test on the inputs that matter and see whether the decision — not just the number — still holds.
A routine for decision-grade J-Curve
The tool does the arithmetic; the routine below is what makes the arithmetic trustworthy. Five steps, a minute total — and afterwards you will know not just what the number is, but which assumption produced it.
Step 1 — one document, one pass. Open the statement, label or record that holds fund commitment ($), expected final moic (×), fund life (years), deployment/harvest lag (years) and transcribe straight into the form. Transcription from a single source removes the mismatch errors that appear when figures are assembled from three different places. The point of transparency is that a reader can disagree with a specific line rather than with you.
Step 2 — baseline before exploration. Get one defensible Years to cross back above zero on screen before you start nudging numbers. Without a baseline, every variation looks interesting and none of them means anything. Rounding early is the quietest way to introduce a permanent error.
Step 3 — change one input at a time. Nudge a single field by ten percent, watch the headline and its companions move, then undo it. Two or three fields will dominate — the sensitivity table above already ranks them for this engine. The fastest sanity test is to guess the answer first and see how far the calculation disagrees.
Step 4 — compute a corridor, not a point. Three runs — worst, likely, best — turn J-Curve from a snapshot into a range. Plan against the pessimistic end and treat the optimistic end as the upside story. Comparisons are cheap: run the identical calculation for the alternative and look at the gap.
Step 5 — schedule the next run. In Business & Entrepreneurship the inputs drift quietly. Put a reminder a quarter out, re-enter the same fields, and read the change rather than the level. If a result feels obviously right, that is the moment to check the inputs hardest.
The real-world conversations J-Curve settles
In Startup Metrics the figure computed here is usually the first one somebody asks to see. Having it — with the formula behind it — changes your position in the conversation from participant to reference. A calculation you cannot explain to somebody else is a calculation you cannot defend.
The companion outputs — Deepest cumulative trough and Trough as % of commitment — exist for the second stage of that screen: the headline sizes the prize, while the companions describe the trade-off you are accepting to get it. Half of a good calculation is knowing which input you would hate to be wrong about.
Treat J-Curve like a smoke alarm rather than a painting — its value is in being tested periodically, not in being admired once. The test of a good estimate is not that it feels right but that it changes what you do.
Quick answers: what searchers ask about J-Curve
What affects J-Curve the most?
J-Curve is driven above all by Expected final MOIC. Perturbing only that field by ten percent either way produced 6.5 years against the 8.0 years baseline — a ≈50.0 % response, while Deployment/harvest lag manages ≈9.4 %.
Which matters more: deployment/harvest lag or expected final moic?
By the numbers, Expected final MOIC: a ten-percent change in it moves the result ≈50.0 %, versus ≈9.4 % for Deployment/harvest lag. Spend your measuring effort in that order — precision on the weaker lever buys almost nothing.
What is a typical J-Curve?
With the example inputs on this page the result is 8.0 years, labelled “The J bottoms and crosses in year 8.0”. “Typical” varies with situation, which is why every result here ships with its verdict band and its sensitivity list: they turn one figure into a range you can locate yourself inside.
How do I calculate J-Curve by hand?
Use the stated model — Linear capital calls vs value returning after the lag; crossover = J-curve bottom — and substitute in the order the tool prints (it starts from Capital is called linearly to $38,500,000; realizations start after the 2-year lag and reach $77,000,000 by year 20). On the example inputs the hand route lands on 8.0 years, exactly what the calculator shows. A spreadsheet reproduces it in two or three cells; doing it once by hand is what makes the automated answer trustworthy.
What happens to J-Curve if expected final moic changes by 10 %?
The engine was re-run with that field moved by ten percent while everything else stayed fixed: the years to cross back above zero goes across 6.5 years to 12.0 years, a swing of roughly 50.0 % around the 8.0 years baseline. That ratio is the practical definition of how much this input matters.
Is the J-Curve result of 8.0 years good or bad?
The tool answers “what”, not “whether”: 8.0 years carries the verdict “The J bottoms and crosses in year 8.0” for the default case, which is a starting interpretation rather than a verdict on your situation. Re-run with your own figures and compare the bands.
How do I calculate J-Curve manually?
Write down the inputs, then follow the printed steps in order — Linear capital calls vs value returning after the lag; crossover = J-curve bottom. A spreadsheet replicates it with two or three cells. The manual route is worth doing once to build intuition; after that the calculator saves time and eliminates transcription slips.
Can J-Curve be negative or empty?
Yes, and that is informative rather than broken: a negative J-Curve usually means the inputs encode an outflow or a shortfall, and the verdict band above labels exactly that situation instead of hiding it.
Why does my statement show losses every year early?
Fees and cost-basis marks dominate before realizations — the J reverses only as harvesting starts.
Can the J be flattened?
Slower fees, earlier harvesting and evergreen structures all shorten it; none remove it.
Is my data private on this page?
Yes — computation happens locally in your browser, with no account, no tracking of your inputs and nothing sent to a server. The printed formula is the whole story of what happens to your figures.
What the labels on this page mean
- Deepest cumulative trough
- $-6,416,667 on the example inputs — a companion figure printed beside the headline of J-Curve so that no result is read in isolation.
- Trough as % of commitment
- 16.7 % in the default J-Curve calculation — one of the secondary figures an experienced reader checks before trusting the primary number.
- Final cumulative gain
- $38,500,000 in the default J-Curve calculation — one of the secondary figures an experienced reader checks before trusting the primary number.
- Years to cross back above zero
- The primary output of this tool: 8.0 years for the default inputs, computed exactly from Linear capital calls vs value returning after the lag; crossover = J-curve bottom.
- Worked example
- Every substitution in order, from the example inputs to 8.0 years — the audit trail for the headline figure.
- Verdict band
- The interpretation attached to a result (“The J bottoms and crosses in year 8.0” on these inputs), which turns a bare number into a position on a scale.
- Sensitivity (±10 %)
- How far the J-Curve moves when a single input is nudged ten percent either way; the ranked list on this page is computed live from this engine.
Methodology, sources and limits
There is no black box on this page — the engine evaluates Linear capital calls vs value returning after the lag; crossover = J-curve bottom. Source of record: Kaplan & Schoar (2005) private-equity performance. Any other implementation of this model should return the same figure for the same inputs. If one does not, the difference is in its assumptions — which this page prints and that one probably does not.
Nothing here replaces a qualified professional, and nothing here is approximate either — the arithmetic is exact, and the honesty is in the inputs you supply. The sensitivity table above is part of that promise rather than a bonus: it lets you see how much of the result depends on how carefully you measured.
What to do with your J-Curve next
Re-run the calculation with your own figures, stress the two most sensitive inputs by ±10 %, and only then act on the result.
Whoever you are (people who need one trustworthy number before their next decision), the next step is the same: replace the example inputs with your own, note the date, and re-run whenever a figure moves. In Business & Entrepreneurship, a dated figure is a trend, and an undated one is a rumour.
