Everything you hold in private markets, and when it might pay you back. The Liquidity Outlook tab is the Exit Timing Calendar, now part of a bigger tool. It will still not give you a predicted exit date, because nobody has one.
An .xlsx or .csv with one row per position. Or pick a file.
Every time the maths behind this tool changes, the version at the bottom of the page changes with it. It is worth knowing which one you were looking at, because two answers produced by different versions are not directly comparable.
Asked for by Kristin Westergard. On Capital calls vs. preferred income, point at a year’s red bar (or its calls figure) to see which positions are calling and how much, and at the green bar (or its preferred figure) to see which are paying. It works the same way as the blocks and gold lines on the liquidity ladder. The full table under the panel is still there for reading years side by side, and both come from the same calculation, so they always agree. No change to the model.
Hover shows up at once, everywhere. The charts have carried amounts on hover for a long time, and nobody knew, because a browser waits about a second before showing one and gives no sign it is there. Anything you can hover inside your results now shows its box straight away, and the pointer changes over it.
A fund’s payout years say where they came from. A fund pays across a window rather than on one date. Where you left Liquidity from and Liquidity to blank, the positions table now marks the years as derived from the hold. If you typed an Exit: earliest on such a fund, the page now says plainly that it does not move a fund’s payout and tells you which two columns do.
An evergreen fund is marked as capital back, not an exit. There is no sale. What lands in those years is your own capital returning as redemptions, at 1.0x; the preferred return is the real return.
Two rows of the same deal stay two rows. The prompt asking you to give them the same exit years now says first that nothing gets merged: each keeps its own commitment and funding date. No change to the model in any of these.
v1.47 · 12 Oct 2026Everything in that tab had been tested against one book: mine. The configurations that break a model are never the ones its author types, so rather than adding more examples I swept it for inputs where it produces something it cannot possibly mean. Three real defects came out.
A plan that asks for nothing printed “NaN%”. The share of your target that got funded is a division, and a plan with no target divides by zero. Anyone modelling “what if I live on the rental income alone” hits it on the first try. A plan that asked for nothing got all of nothing, which is 100%.
A plan age typed as a year ran a two-thousand-year retirement without comment. If you have just entered 1968 as a birth year and 2030 as a stop year, 2095 in the next box is an easy slip, and the model took it literally: every percentile computed, a result that looks entirely normal until you read the axis. It now refuses, and works out that 2095 from a 1968 birth year is age 127, so you can see the mistake rather than just be told there is one. It does not quietly read 2095 as 95, because guessing at what you typed is not something this tool does anywhere else.
And when there is nothing to run, it says which number is the problem. There are four reasons the simulator can come back empty and the panel named two of them, which tells you nothing at all if you have one of the other two.
Seven regression tests cover those, plus the direction every answer has to move in: spending more can never improve a plan, more money can never make one worse, working longer can never hurt, and a one-time withdrawal has to cost something measurable. That last one started as a weaker test that passed even with the feature switched off, which is worth admitting, because a test that cannot fail is the thing these are meant to catch.
v1.46 · 8 Oct 2026SpaceStation announced on 7 October that its last fund-wide capital call of 2026 will be 7.5% of commitment, with the notice on 2 November and payment due 17 November. That is $18,750 on the example book’s $250,000 commitment, against the $12,500 (5%) quarterly pace the book had assumed, so the calls panel now shows $18,750 for 2026. The fund is also extending its Final Close past 31 October to the end of the year for new investors and commitment increases, which must be finalized by 13 November. No change to the model.
v1.45 · 7 Oct 2026The example book’s Asilia GC Fund call of 5 October has now been paid: $24,000 of the $100,000 commitment is funded and $76,000 is uncalled. Its next call goes back to the one the fund has guided for, about $20,000 in the first quarter of 2027, so the calls panel now shows $12,500 in 2026 (SpaceStation only) and $70,000 in 2027. The downloadable tracker carries the same figures. No change to the model.
v1.44 · 6 Oct 2026Asked for by Kristin Westergard, after the same breakdown appeared under the ladder: which companies are calling, and which are paying, in each year. It is under the table on Liquidity Outlook.
Both sides of that panel are contractual rather than simulated, so unlike the outcome charts they can be attributed exactly. A call is money you are obliged to send and a preferred return is money the documents promise you.
It also answers a question you were about to have. The preferred figures there are the full contractual schedule, which is why they read higher than the gold lines on the liquidity ladder. On the ladder that same income is weighted by how the deal actually goes, because it sits beside exit proceeds that are weighted the same way. Both are right for their own panel, and anyone comparing them side by side has every reason to think one is wrong, so the breakdown now says which is which.
Cash flow by year cannot have this, and that is worth saying rather than quietly leaving it out. It is a percentile table: each row is whichever future happened to land at the 10th, 50th or 90th that year, and they are different futures. No set of deals makes up a percentile, so breaking one down would hand you a number that is not real. The ladder is a schedule, which is why it can be attributed.
v1.43 · 5 Oct 2026Asilia GC Fund issued its second capital call on 5 October: 5% of commitment, due 19 October, which takes the fund to 24 per cent called. The example book now shows that call as its next one, so the calls panel puts $5,000 in 2026 and spreads the remaining $76,000 over the following three years. No change to the model.
v1.42 · 3 Oct 2026The example book showed SpaceStation calling $58,333 in 2026, when only one $12,500 call is left this year. Two things caused it. The example book did not carry the next calls its owner already knows about, and the tool spread whatever was uncalled evenly over three years from the year after funding — including the months already behind you. Your uncalled figure is what is left today, so none of it can be called in the past. A modelled spread that would have started earlier now starts now: the current year shows only what is still ahead, and the tail runs on into a later year. The panel’s old “about $10k still ahead” note is gone because the figure itself now means that.
A fund that calls at a known pace runs off at it. SpaceStation has called 5% of commitment every quarter, so its file now says so and the balance runs off at 20% a year instead of an even three-year guess. The example book carries its real next calls (SpaceStation Q4 2026, Asilia Q1 2027). The deal’s rate of return now uses the same call schedule as the calls panel; it had kept its own copy.
Other fixes from a full audit.
If you bought into the same deal twice, the model was treating the two rows as two different companies. Each drew its own outcome, so a single simulated future could write one tranche off entirely and pay the other its sponsor case. That cannot happen: one company has one fate. It also quietly manufactured diversification that does not exist, so two $10,000 tranches of one deal looked safer than one $20,000 position in it.
Rows are grouped by the deal they resolve to, not by name, so Eephus Growth Fund I and II stay independent as they should while two rows of the same fund do not. If your book has tranches, your numbers will move — the downside gets slightly worse and the upside slightly better, because the false averaging is gone. A book without tranches is unchanged to the cent.
What is NOT shared is the exit year. That comes from each row's own dates, and overruling what you typed is not this tool's job. But one company only exits once, so if two rows of the same deal carry different exit years the page now says so and tells you to make them match. That usually happens when you filled the exit columns on one row and left them blank on the other, which makes the tool derive a different year from year funded plus hold.
v1.40 · 2 Oct 2026Found by Kristin Westergard on her own book, and she was right to the dollar. Her Asilia Evergreen row is $400,000 committed, nothing funded, and she had told the tool the next call is Q1 2027. The ladder still showed $37,333 of income for 2026. It should have been $26,000, which is the yield on uncalled capital, because in 2026 none of it has been called.
Why. v1.38 added the Next call date column and taught the capital-calls panel about it. It did not teach the preferred return, which kept its own copy of the old assumption that a commitment is drawn evenly over three years from the year after you funded. So the calls table said nothing arrives before 2027 while the coupon was being paid on a third of the commitment in 2026. The $37,333 was $20,000 of coupon on money that had not been called, plus $17,333 of yield on the rest. There is now one schedule, used by both, so they cannot disagree again.
Zero is no longer shown as a loss. A deal whose typical outcome is “you get your capital back” has a rate of return of exactly zero, and the solver lands a hair underneath it, so the table printed a red −0.0%. On a book with several single venture deals that is most of the column. Anything inside half a basis point now reads 0.0% in plain ink. The genuinely negative figures are unaffected, and a sleeve can show a small negative: that column is a yearly rate, so −0.4% a year is a few per cent of capital over a hold, not a loss bigger than what you put in.
And the by-deal table keeps your order. It used to sort by sponsor case and throw away the order you typed, which splits two tranches of the same deal apart and makes them hard to compare. Your tracker order is now the default, with buttons to re-sort by sponsor case, typical return or commitment.
v1.39 · 1 Oct 2026You do not have to download anything. The columns are optional and the app works exactly as it always has without them, so an existing tracker keeps producing the figures it produced yesterday. This is only for people who want to start dating their calls.
If you do, you have two ways in and neither needs a migration: add the two columns to the sheet you already have — headed Next call date and Next call amount, anywhere in the row, since columns are matched by name and not by position — or download the new TRACKER v1.8 and move your rows across. The first is less work.
The template marks them yellow like every other cell you fill in, carries a worked example on the Asilia GC Fund row so the date format is visible rather than described, and the Read me explains what happens when you leave them blank. The version in the top-left of the Positions tab now reads v1.8.
v1.38 · 1 Oct 2026Two optional columns: Next call date and Next call amount. Leave them blank and nothing changes. Fill them in and the tool uses what you know instead of what it assumed. Sponsors rarely publish a call schedule, so until now it took whatever was still uncalled and spread it evenly over about three years from the year after you funded. That is a reasonable guess and it is still the fallback, but it was being asserted over people who had better information, which is the opposite of how the rest of this works.
Any spelling of the date works — 2027, Q1 2027, 2027-03, March 2027 — because only the year is used. This calendar is annual, and holding the quarter would imply a precision nothing downstream uses. With a date and an amount, that amount lands in that year and the remainder spreads after it. With the date alone, nothing is shown arriving before it, which is usually the thing you actually want to say.
An amount with no date is refused, out loud. There is no year to put it in, and choosing one would invent exactly the thing the column exists to stop. Those rows fall back to the even spread and the panel names them, because a column you filled in that quietly did nothing is worse than no column at all.
The panel also lists which positions came from your tracker rather than from the model, and echoes your date back as you wrote it so you can see it was read correctly. A year you have dated yourself no longer shows the still ahead estimate, since pro-rating a known date by months elapsed would be the tool second-guessing the one person who knows.
Under the hood: this panel had grown its own second copy of the call schedule, so the rule lived in two files and could drift without either looking wrong. It now calls the same function the simulation does.
v1.37 · 1 Oct 2026The gold preferred-return lines on the ladder now carry their amount, which the exit blocks have had since the chart shipped. Hover either. The figure was always being calculated, it was just never attached to the one element that arrives on a promised schedule rather than on a hope.
The capital-calls year now says what it is. Asked whether it meant what has been called so far or what is left, and the honest answer is neither. Sponsors rarely publish a call schedule, so the tool takes whatever is still uncalled and spreads it evenly over about three years from the year after you funded. Every row is therefore a full calendar year, modelled rather than scheduled, and the current one includes the months already gone. The current year is now marked, and carries roughly how much of it is still ahead. If you know a real call date, yours beats this — a column to tell it so is next.
And you can now see which positions produce the cash in a given year. Under the ladder, position by position, preferred return and exit split out. It deliberately sits there rather than under Cumulative cash received, and that is worth a sentence: the cumulative table is percentiles, where each row is whichever future happened to land at the 10th, 50th or 90th that year, and they are different futures. No set of deals makes up a percentile, so breaking one down would be inventing a fact. The ladder is a schedule, so it can be attributed, and the breakdown says plainly that it does not add up to the percentile tables.
v1.36 · 1 Oct 2026Found by Kristin Westergard, and it is the most consequential thing anyone has reported. The by-deal table on Performance & Returns showed a good run of >1000% against the Asilia Credit Fund Evergreen. Read as written, that says the fund has an extraordinary upside and no downside. It was not a return at all. It was the bisection solver hitting the top of its search range and the table printing the range.
Why it happened, and who else saw it. When most of a commitment is still uncalled, the preferred return starts arriving while the capital is still in your account. So cash comes back before the rest of it goes out, and there is no single annual rate that describes that shape — mathematically there can be several, or none below 1000%. On a test position of $400,000 committed against $20,000 funded, 19% of runs could not be solved at all. This was never specific to ACFE: any position paying a preferred return with a large uncalled balance could do it, which on a typical Growth Circle book also means the Asilia GC Fund and BlueBird Capital.
The engine always knew. It has labelled these runs internally since the rate of return was added, and nothing ever displayed the label. A run it could not solve was counted and then quietly folded in with the ones it could.
What changes. A rate that cannot be solved is now reported as unsolved rather than as the ceiling, and the unsolved runs keep their place at the top of the ordering instead of being deleted from it — deleting them is the quieter version of the same error, because the runs that break are the highest ones, so dropping them hands you a complete-looking band built only from the runs that behaved. So the good run now reads n/a exactly when a tenth or more of the runs are unsolvable, while the typical column is unaffected. The table now names the deals involved, the share of runs, and the reason, and points you at the multiple on capital, which is unaffected and is the more honest measure for a part-funded position anyway: a high rate on money you have not sent yet is not a return you can spend.
If your positions are fully called, not one figure moves. That was checked rather than assumed.
v1.35 · 30 Sep 2026The outcome table was chosen by one question: does the deal quote a preferred return. Nothing else. So Philo Hospitality Fund — a hospitality fund holding three properties, with the sponsor projecting 2.08x — fell through to the table built for a single venture company, at a 30% chance of returning nothing. Expected outcome over six years: 1.00x. Your money back and not one dollar more. Meanwhile Eephus, also real estate, quotes a 6% pref and sat on the income table at 5%. Two real estate funds, a six-fold difference in the chance of a total loss, decided by whether the sponsor happened to quote a pref rather than by anything about the buildings.
Real estate that pays no coupon now has a table of its own, and it sits between the two. One in ten to zero, three in ten below cost, and — the part neither old table had — a branch where you simply take a haircut and get about 70 cents back. That is the outcome levered property actually produces most often. Philo now expects 1.22x rather than 1.00x, with a 10% chance of returning nothing rather than 30%. If you hold Philo, your downside got materially better between v1.34 and v1.35, and that is the correction, not a new opinion.
Eephus has NOT moved and is priced exactly as it was. Its pref is what keeps it on the income table, and a test now pins its expected value to the dollar so a later change here cannot quietly drag it along.
Leverage is what decides whether property can go to zero, so those weights are the reading at a 65% loan-to-value and there is a dial keyed to it: less leverage moves weight out of the total-loss bucket, more moves it in. No deal on file records its LTV yet, so every one of them is being read at 65% and the card says so rather than implying the sponsor supplied it. If you know the real LTV on something you hold, that is worth telling me — it is the single input that most changes these numbers.
And a correction the new test found on its way past. A card showed the preferred return the deal is scheduled to pay, listed under the heading What the model makes of it, right beside the expected exit. But the model does not assume a pref gets paid in full: a deal that is written off pays a quarter of it, one that lands well below plan pays 70%. So anyone adding the two lines together was reading a total the rest of the app never produced, high by 4% to 9% on every deal here that pays a preferred return — Eephus I and II, both Asilia funds and BlueBird. The card now shows what the model expects to be paid, with the scheduled figure kept beside it, because the contractual number is still worth knowing. Nothing about how these deals are modelled has changed; the simulation on Liquidity Outlook was always doing this correctly and the card was not.
Also: Rorra’s sponsor now reads Spacestation Investments · Rorra, matching the other Spacestation deals. It was corrected in v1.34 but a deal-file change is cached against the app version, so it could not actually reach anyone until this bump.
v1.34 · 30 Sep 2026The Asilia GC Fund does not start paying immediately. The tool said quarterly distributions beginning straight away. Austin Read confirmed the first one is for Q4 2026 and is paid 45 to 60 days after quarter end, so it arrives around February 2027. That is roughly a year later than the tool assumed, on a fund whose case is quarterly cash while you wait. He also confirmed distributions are calculated on called capital and grow as more is drawn, which is the same thing the preferred-return fix in v1.24 corrected. About 19% had been called as at 30 September.
The Asilia Debt Fund (2025) has been removed. It was never offered to Growth Circle. The December 2025 session was titled “Asilia Debt Fund Live Pitch”, which is where this came from, but the vehicle actually offered that day was the Credit Fund Evergreen. The 2025 fund was the track record behind it, not something members could buy. The sequence is Evergreen, offered December 2025 and closed February 2026, then the Asilia GC Fund in April 2026. A tab called Loaded GC Deals should not list something GC was never offered, so the record is gone rather than relabelled. If you hold it independently it still works, it just runs on what your own sheet says. The Evergreen fund also drops “Fund II” from its name.
A removed deal’s name no longer starts meaning a different deal. The tool matches what you typed against the names it knows, and when a name could mean two of them it deliberately resolves to nothing rather than guess. That protection was accidental: it lasted only as long as both vehicles had a file. With the 2025 fund gone, Asilia Credit Fund I was left matching the Evergreen fund as the only candidate standing, so it would have resolved cleanly and filled in Evergreen’s coupon, term and redemption gate against a position that is not Evergreen. The index now names the vehicles it knows about but does not carry, those names resolve to nothing on purpose, and the Loaded GC Deals tab says which they are and why. If you hold Asilia Credit Fund I, check that row — on v1.34 it fills in nothing and waits for your terms, which is correct, and on nothing earlier did it fill in the wrong ones.
v1.33 · 29 Sep 2026The app had grown to ten panels under two tabs that were each doing three jobs. It now reads as five. Private Deal Dashboard is what you hold. Liquidity Outlook is when the money moves. Performance & Returns is how much comes back, split out so the timing questions and the size questions stop competing for the same scroll. Glossary & Background is the assumptions and what the tool cannot tell you, and it now carries the reading guide that used to sit at the foot of a very long page. Loaded GC Deals lists every deal on file and the names each one answers to.
The sleeve filter shows on both outcome tabs and keeps your selection across them, so picking Venture only on one does not silently reset on the other. Every explanation on every panel was rewritten shorter.
The app called your holdings a book, which is trading desk language nobody in Growth Circle actually uses. It now says sleeve and portfolio throughout: Your portfolio, Your allocation, Which sleeve, Outcome range by sleeve, Blended portfolio, Your positions. The typical run is labelled as what it is, the median.
The range chart reads back harder. It now points out how differently wide the three sleeves are, and what holding both actually bought you: the blend gives up a little at the top and buys far more at the bottom. It also says plainly which number is missing from that picture — when — and sends you to the ladder for it.
The two multiples used to be explained in words. They now carry the real distribution, read straight from the model so the sentence cannot drift away from the numbers it describes: a single venture deal is 30% written off, 30% back at cost, 30% at 1.65x and 10% at the sponsor case, while the income sleeves run 5/25/55/15.
A fund holding twenty or more deals gets its own wider ladder, which is why the text no longer says “all four outcomes” — that was never true of the largest position in the example book. The tiles are now Sponsor MOIC and Modelled MOIC, and the panels read Your portfolio, Your allocation, Capital calls vs. preferred income, and Your deals.
The written part of a card was one long block. It is now headed sections — what it is, who runs it, the numbers, and a final section that is whatever that particular deal turns on. The headings live with each deal rather than in the code, because a fund has a sponsor where a company has founders, and what a deal hinges on is never the same twice. What to watch is unchanged.
Where a card's figures were sourced from is no longer shown. Those were notes to ourselves about how well documented a deal is, and reading them invites you to weigh the citation instead of the deal. The tracking has not gone away — it moved somewhere it can be acted on.
The twenty-third deal card, and an unusual one. It is a secondary purchase of common stock rather than a raise: nothing goes onto the company's balance sheet, because it has not needed outside capital since 2022. Spacestation is the lead, so it set the terms.
Entry is at roughly the same valuation as the 2022 priced round, when revenue was about a quarter of today's and the business was losing money. The card carries what that costs you: it is common stock behind $110.5M of preferred, and it is not QSBS-eligible, which several other deals on this list are.
The Expected in the year row at the foot of the maturity ladder now prints its amount above each block. The figures were there before, but only on hover, which meant they did not exist on a printed page, on a phone, or for anyone reading the chart rather than poking at it. The bars top out at sixteen pixels and carry no scale, so without a number the row could only say more in 2033 than in 2027.
Austin Read at Asilia answered the question Kristin Westergard put to him, and the answer was more specific than anyone expected. Uncalled commitments in ACFE do earn before any capital is called, at roughly 6–7% annualised rather than the 4% first reported. But it is not an investment return: it comes from the fund's subscription line, which is borrowing, and borrowing matures. It ends when that line does, at the end of June 2027. After that the return is on called capital only.
The tool could not express that. A rate on uncalled capital applied for the whole hold, which would have run a temporary financing arrangement out to 2034 and invented years of income. A yield on uncalled capital now carries the date it stops, and the last year counts only the part of it actually earned.
Two things worth knowing. The accrued earnings are netted against your first capital call rather than paid out — the same arithmetic, but not money in your pocket. And Austin answered for ACFE. The Asilia GC Fund is the fund-of-funds that holds ACFE as one of three sleeves, and whether any of this reaches a feeder's investors was not asked, so that position still assumes nothing.
Ancient Crunch now records both of its rounds. The May 2026 convertible note, and the priced round that followed about two months later at a $245M pre-money valuation — a 2.2x markup on paper, with roughly 10% dilution and pro rata offered on a handshake rather than a contract.
The twenty-second deal card. MASA, Vandy and the popcorn brand, all under one parent, so any of those names now resolves to the same position. Scored 86 of 100 by the Growth Circle underwrite — the strongest exit potential of anything on file, at 9.5, against the weakest market score, at 7.5.
Two rounds sit in this record and they are not the same investment. The card carries the terms of the May 2026 convertible note: a $100M cap, a 20% discount, 8% accruing interest and 2x your money ahead of everyone else if the company sells while the note is still debt. A priced round followed about two months later at a higher valuation, and none of those protections apply to it. Check which one you hold before reading any number on the card.
The 8% is not a preferred return and the tool will not let it become one. It does not pay in cash; it accrues and turns into more equity. Typed into the preferred return column it would have invented years of income that never arrives and repriced a venture bet as an income sleeve. A venture position can no longer carry a preferred return at all.
Playhouse MD was published and stayed invisible. The deal files are served with a ten-minute cache, and the page asked for them without saying which version it wanted — so a browser handed back yesterday's deal list against today's app, and there was no way to tell that from a deal simply not being written yet. Kristin hit the same confusion from the other side, reporting the Ancient Crunch card as having disappeared when it had never been there.
Deal data now carries the app version, so a release refreshes it once and the cache keeps working in between. If a deal you expect is missing, it is missing, which is the only useful answer.
Kristin Westergard found this one. She asked whether the tool pays the headline rate on your whole commitment while most of it is still uncalled. It did. For a position you have funded in full this changes nothing and always did. For one still being drawn down it was the most generous of every possible reading.
On the example book that is Asilia GC Fund — $100,000 committed against $19,000 funded — and it was worth $9,720 of preferred return that had not been earned yet. The preferred return now accrues on capital as it is called, ramping over the call schedule. Exit proceeds are unchanged and still run off the full commitment, because the whole commitment is called long before any exit lands.
What a fund pays you on the uncalled balance is a separate term, and it defaults to nothing. Some funds pay a small yield on committed-but-uncalled money so it is not sitting idle. That is not the headline rate and the two must never be added together by accident. Asilia is documented as paying something; the rate is not settled, so the tool pays zero there until it is, which understates the position on purpose.
A maturity and liquidity ladder. One row per position, one block per year it pays, shaded darker where a bigger share of that position lands. A deal bought once is a single block; a fund that sells down over several years appears in each of them, which is the thing the tables could never show you. The thin gold line under a row is its preferred return, which arrives on a schedule rather than on an exit.
It is deliberately not a range. Everything else on that tab ranks thousands of simulated futures; the ladder is the schedule the deals’ own terms imply, so it answers when a position is due rather than how likely it is to pay.
The three books side by side. Venture, the income sleeves and the blended book, each drawn from a bad run to a good one with the typical run marked, as a multiple on capital committed so books of different sizes read against each other.
A fourth tab, Loaded GC Deals. Every deal the tool already knows, in alphabetical order, with its sponsor, terms and what to watch. Twenty are documented and most books hold a handful, so most of this was invisible to any one reader. Open any deal and it lists every name it answers to — which is the answer to “why is my position not filling in its terms”.
The lifetime returns table now sits under the cone of outcomes, where it reads as the cone’s own numbers rather than as a separate claim.
Nobody writes the legal name of a fund in their own spreadsheet. Eephus I, Plan A, Asilia GC, SSF, Philo, Telly, Turbo, Bluebird, Rainmaker and a few dozen other spellings now resolve to the right deal, so the terms fill in without you having to match someone else’s wording.
What has NOT changed is the refusal to guess. “Eephus” on its own is genuinely ambiguous between Fund I and Fund II, and “Asilia” between three different vehicles. Those still resolve to nothing, and a test asserts they always will, because attaching one deal’s terms to another deal’s money is far worse than filling in nothing. A stray alias was also removed while doing this: the Asilia Debt Fund had been given “Asilia GC Fund (first offering)” as an alternative name, which is not what it was called and would have made “Asilia GC” ambiguous.
And when a position cannot be placed, the page now says so. It used to go quiet: the row still ran on whatever you typed, which is the right behaviour, but nothing on screen told you its terms had come from nowhere. Two different messages, because they have different fixes. If the name could mean more than one deal you are told which ones, so writing the fuller name is a one-word repair. If it is simply not in the shared files you are told once, along with the note that this is normal — most books hold things this tool has never been shown.
Run the example book and the page would report it as an older tracker. It was wrong every time, and about the file this page itself ships.
The cause was mundane. The age check reads which columns a sheet has, and the demo button does not parse a sheet, so there were no columns to read and the check saw nothing. It now reads the same signal from the data it was handed. The check itself is unchanged for real uploads — a tracker that genuinely predates the optional columns is still told so, and a test asserts that, because silencing the warning would have been a worse bug than the one being fixed.
The example book is also regenerated from the shipped tracker and now carries every column that tracker has, including the ones left blank. A column that exists and is empty is not the same as a column that is missing, and treating them alike is what let the file claim to be older than the sheet it comes from.
A member reported the break-even note missing from her chart. It was not missing — it was in the sentence underneath, which said the year plainly. But she looked at the chart, found no year on it, and drew the obvious conclusion. That is a fair reading of a chart, and a good enough reason to move the information.
The cone now carries a dot where the typical future crosses the money-back line, with the year beneath it. It is the same year the sentence below states, worked out the same way, and a test asserts the two can never disagree — a chart and a caption showing different years would be worse than neither showing one. The dot is placed at the true crossing rather than at the nearest year tick, so it sits on the line where it belongs.
If your typical future never gets back above the line inside the calendar, nothing is marked and the sentence says so outright.
The hold now sits beside every return figure, commitment-weighted for the sleeves. It matters more than it sounds, because a multiple and a yearly rate rank the same deals differently: Next Life Sciences at 14.2x comes out below Rorra at 4.3x, purely because one takes eight years and the other four. With both columns on the same row you can read that straight across.
On the example book the sleeves are 6.7 years for income against 9.1 for venture, which is most of why their rates look so far apart. The returns panel now says how much of the gap that accounts for: shortening venture to a five-year hold would lift it from 7.2% to 13.8% a year, and its good run from 15% to 45%. What the hold does not explain is the middle — the typical single venture deal returns exactly your money back, and 1.0x is 0% a year whether it takes four years or twenty.
A scatter chart of the same idea was tried and withdrawn on the same day. It asked a reader to hold two axes, a log scale and a bubble size in their head at once, and the two columns say it better. No number changed either way; it was only ever a way of drawing figures the tool already had.
Thanks to the member who asked whether the timeframe needed normalising. It does not — a yearly rate already divides by the years — but the question was worth measuring rather than answering from theory.
Until now the model paid every preferred return in full, in every single one of the 6,000 simulated futures. That was the most optimistic assumption in the tool and it made the income sleeves look steadier than they are. A member asked whether the bad scenarios should not also pay less, which is the right question.
How much arrives now depends on how the deal turned out — and on the same draw as the exit, not a separate one. That detail is the whole point: the fund that hands back less than plan is the same fund that stopped paying its coupon. Drawing the two independently would have let a position lose its entire equity while still paying seven years of preferred return, which does not happen. A position that writes off its equity pays about a quarter of its scheduled preferred return; one well below plan pays about 70%; one near plan about 90%.
What it does to the example book. The documents promise $231,000 of preferred return. The typical future now collects $197,400, and a bad run collects $166,200. The income sleeve’s typical yearly return falls from 19.6% to 18.1% and the whole book from 12.4% to 11.8%. Venture does not move at all, because it pays no preferred return — which is a useful check that the change did what it was meant to and nothing else.
The gap between income and venture narrowed but did not close, and that is worth knowing: the gap was never mostly about this. It is mostly that money back sooner is worth more to a yearly rate, and that a single venture deal carries a 30% chance of returning nothing against 5% for an income sleeve. There is now an explanation of that on the returns panel, because it is the first question the table invites.
The shares are judgements rather than findings, and they sit in one place in the code so they can be argued with. Thanks to the member who pushed on this one.
There is an IRR panel on Liquidity Outlook — by deal, by asset class, and across the whole book. Two things about it are worth knowing before you read it.
It counts cash, not marks. Every dollar in it is money actually returned, so it will read LOWER than an IRR a sponsor reports, because theirs includes unrealised carrying value. That gap is the difference between the two methods, not an error in either.
A portfolio IRR is not the average of its deals’ IRRs. IRR is not additive. The panel pools every position’s cash flow, solves once per simulated future, and ranks the futures after that. On the example book, averaging the thirteen deals instead gives a median of −5.4% against the correct 12.4% — which is the difference between a healthy book and a loss-making one, so it is worth saying out loud.
The most useful number turned out to be one nobody asked for. Every single venture SPV in the example book has a roughly 30% chance of returning nothing and a median IRR of 0.0%. Pooled as a sleeve, the same eight positions have a median of 7.2% and a P10 of −0.8%. Nothing about any deal changed, only that there are eight of them.
A sponsor’s multiple is now shown as its own IRR. The outcome table puts a sponsor’s figure in the top 10% of outcomes only, so at the median and even at a good run it was invisible: four deals with sponsor multiples between 5.5x and 14.2x were printing an identical number. The sponsor case now sits beside the model’s own percentiles so the two can be compared directly.
New optional column: Marked Up MOIC. If you track valuation increases — your position doubling when a round reprices — you can record it. It drives a paper track shown beside the cash forecast and never inside it: it moves no cash figure, and it never enters the IRR. Blank means nothing changes, and a tracker from before this version produces identical numbers to the ones it produced yesterday.
Thanks to Rick Strauss for asking for IRR by investment, asset class and scenario, and to John Millen for the markup argument — his reason for tracking paper gains was better than the reason for ignoring them.
There are three Asilia funds and the tool had been conflating them. Sorted:
If you hold ACFE directly you should not be paying the fund-of-funds overlay. Direct is 1% and 20%. Inside the GC Fund the underlying is 0.5/20 with a 0.5/10 overlay on top — 1.0/30 all-in. Different route, different fee.
Rorra was carrying a ten-year hold that came from no document at all. The underwrite says three to five years. That moved its exit from 2036 to 2030. A wrong timeline is worse than a wrong multiple — it puts the cash in the wrong decade. If you hold Rorra, reload: your calendar just changed shape.
If a venture deal has no multiple and no preferred return, this tool falls back to 5.0x. It always has. What it never did was tell you — so a number the tool invented sat on the card looking exactly like a sponsor’s projection. 5.0x is not a neutral assumption, it is a strong claim. The card now says when the figure was assumed, and invites you to put your own in.
Rainmaker is the deal that surfaced it. Its documents and the underwriting call produce no base case at all — it is sold on multiple expansion rather than a projected multiple. So everyone loading it got a confident 5.0x that nobody had ever said. Its card now carries what the documents actually say: a bare SAFE at a $450M post-money cap, about 10x forward revenue, roughly a 28% premium to the Series B, no preference and no rights, a $10,000 minimum, and SPV fees front-loaded at around 8–10% in year one. It is marked provisional, because the terms come from the underwriting call rather than from an executed SAFE.
If you hold something with no sponsor multiple, this is your prompt to put a number in. Yours always wins.
A fund card used to describe the wrapper and say nothing about what is inside it. Where a sponsor publishes its portfolio, the card now lists it — company names, stage and a line on each. SpaceStation is the first: eleven companies so far, against a target final portfolio in the mid-to-high 30s.
SpaceStation terms are now from the Partnership Agreement rather than from memory. Ten-year term from final closing, extendable by two one-year periods, with a five-year investment period. 2% management fee on your committed capital — note that is a different basis from Eephus, where the 2% is charged on the properties' income. 20% carried interest. Capital is called over roughly three and a half years, in tranches as deals get done rather than on a fixed schedule.
The deal count moved from an estimated 40 to 37, from the sponsor's own stated target. Either way it is well above the 20-deal line, so it is priced as a fund.
BlueBird: the preferred return is confirmed with the GP as paid annually. The PPM reserves the timing to the GP's discretion, so that confirmation is worth having written down.
Every number was already right, which is worth saying: 15% preferred, a 7-year term, a 2.65x target, 2% management fee, $100k minimum. The documents confirmed the card rather than correcting it.
The description of the deal was wrong, though. The card said “a single operating company, not a pool”. It is a roll-up: it buys several small gutter and roofing businesses across multiple markets, combines them into one operation, and sells that platform to a private equity or strategic buyer. It buys many and sells one — which is still why it is modelled as a single exit rather than a fund selling down, but for a different reason than the card gave.
The waterfall is now written out in full, and it is worth reading. 15% preferred first, then 100% of your capital back, then carried interest of 90% to the GP and 10% to you. The sponsor takes nothing until your capital and the whole accrued preferred are paid, which is investor-friendly — but above that line the split is heavily theirs, so a realistic outcome sits close to capital plus preferred. Read the 2.65x target with that in mind.
Fund term is 7 years, extendable by the GP for two further one-year periods.
The documents arrived, so the guessing stops. Your Eephus class is set by how much you invested, exactly as was suspected, and the tool now works it out from your commitment and applies the right preferred rate by itself.
Fund I — $50k buys Class A-4 at 6%, $100k gets A-3 at 7%, $250k gets A-2 at 8%, $500k gets A-1 at 8%.
Fund II is not the same ladder, which is worth knowing if you are in both. It has five classes and pays more at the top: $50k is A-5 at 6%, $100k is A-4 at 7%, $250k is A-3 at 8%, $500k is A-2 at 8%, and $1M is A-1 at 9%.
Both accrue non-compounding on your unreturned capital, and start from the later of the date you fund or the date the fund deploys your money — so the clock can begin after your cash goes in.
Also corrected: the management fee is 2% of the income the properties generate, not 2% of your committed capital. Those are very different things and the card said the wrong one. Carry on Fund I is 30% to the sponsor after the preferred, then a 20% ARR hurdle, then 50/50; Fund II runs a 30% catch-up, then 70/30 to a 15% IRR, then 50/50.
Yesterday this tool noticed that several GC deals price by ticket size, and then printed a message telling you to go and work out your own share class and type the number in. That was the tool asking you to do its job. It already knows what you committed and it already holds the bands.
Asilia now resolves automatically. Under $400k you are Class B at 1.3% and 30% carry; at $400k and above you are Class A at 1.2% and 20%. The card says which one you are in and that it came from your own commitment.
Eephus deliberately does not. Its documents give the rate per share class — 8% for A-1 and A-2, 7% for A-3, 6% for A-4 — but never say what sets the class. Guessing a ticket-size breakpoint would be worse than admitting there is one, so the card still asks you. If you know the breakpoints, send them over and Eephus will resolve automatically too.
Anything you type still wins. A tier only ever fills a cell you left blank.
Also: the earlier Asilia offering is now called Asilia (first offering) rather than Asilia GC Fund (first offering). The old spelling still matches, so nothing breaks.
The Asilia GC Fund was raised twice, on different terms, and the tool was treating them as one deal. The earlier offering has a 3.27x base case with the equity kickers realised over years 5 to 8. The later one has a 5.27x base case over years 6 to 8. They now have a file each. If you hold the later one, nothing changes — keep calling it Asilia GC Fund. If you hold the earlier one, name it Asilia GC Fund (first offering).
A deal card now warns you when a term is not the same for every investor. Eephus pays 8% to Class A-1 and A-2, 7% to A-3 and 6% to A-4, and the shared file carries 6% — the lowest tier. Asilia charges 1.3% and 30% carry below $400k and 1.2% and 20% above it, and the file carries the below-$400k class. In both cases the tiering was written down in the file all along and nothing put it on screen. Check your own class and type your figure in; what you type wins.
Cards also print the footnotes the terms were already carrying — which share class a rate refers to, what a hold actually means, whether a preferred return compounds. That text existed since the files were written and had never been displayed.
Said out loud on the Background tab: management fees and carry are shown on a card but are not modelled. The model runs on the sponsor’s quoted multiple, which is already net to the investor, so charging fees again would count them twice. If you are in a cheaper fee class than the one the file records, you are keeping more than the tool shows.
None of these could be seen on screen. The page rendered normally in every case, which is what made them worth finding.
A percentage typed as text was read as a whole number. If your preferred return cell
contained the text 8% rather than a number formatted as a percentage,
it was read as 8 — a preferred return of 800% a year. Excel usually
hides this, because a percent-formatted cell really holds 0.08. A CSV does
not: export that same cell and it is written out as the text “8%”.
That is the route anyone on a Mac was told to take, so this only ever hit the people
least able to spot it. If your book showed absurd income, this was why. Reload and
drop your file again.
A column headed “Type” lost its asset class. When the Fund / Single deal column arrived in v1.5 it claimed “Type” as one of its names, and took it off the asset-class column, which had used it since the beginning. Trackers predating v1.5 were the ones affected — the people who had been using the tool longest.
A column headed “Funded year” was read as an amount. It starts with the word “funded”, so it was matched to funded-to-date: a year of 2026 became $2,026 paid in, and the position then showed an uncalled balance that did not exist.
Also: the tracker now carries its own version number, separate from the app’s. They were the same number, so a release that changed no columns was telling people to go and find a stamp that did not exist in the file they already had. Your tracker is current at v1.6; you do not need a new one.
A new chart under the cumulative table on Liquidity Outlook. That table is exact and unreadable at a glance — seventeen rows of three columns — and the thing worth taking from it is a shape: how fast the gap between a bad future and a good one opens up. The shaded band runs from the 10th to the 90th percentile with the median through it, there is a dashed line at the capital you committed, and the year each edge crosses that line is stated in words underneath. It is drawn from the same rows the table prints, so the two cannot disagree.
A deal card now says which figures you typed over the shared file. Your value is still the one that runs, and that has not changed. What has changed is that the disagreement is visible. A number you chose on purpose and a number that went stale when a sponsor’s terms were corrected used to look exactly alike — which is how a 5-to-8 payout window sat under a deal whose documents say 6 to 8 for a day. Both figures now print, yours first.
The shared Asilia terms have been replaced from the April 2026 presentation, the Growth Circle refreshed analysis, the underwrite and the Q&A notes. The base case is 5.27x over 8 years, not the 3.27x that was here. The fund runs 5 years of deployment then a 3-year harvest with no extension, so the equity kickers land in years 6 to 8 rather than 5 to 8. Fees are 1.3% and 30% carry under $400k, 1.2% and 20% above it.
A holder pointed out that ACFE and the Asilia GC Fund were being run together. They are different vehicles. ACFE is the conservative sleeve on its own: senior secured lending, evergreen, no wind-down and no exit multiple to quote. The GC Fund is the three-sleeve wrapper that holds it alongside Walnut and Opportunistic. If you hold the standalone, use the ACFE file.
Typing just “Asilia” used to attach whichever file had the longer name. Two vehicles start with that word, so the tool would have picked one and looked confident about it. When more than one deal could match, none is used and you supply your own terms. Writing the fuller name resolves it.
There is a new column in the tracker called Fund or Single deal. Type one or the other and the tool stops guessing. A fund sells down over several years; a single company or property is bought on one date, and that difference changes when your money shows up.
It was possible to express this before by counting the deals inside a fund, which was an indirect way to ask a question you already know the answer to. The count still matters for one thing only: a venture fund of 20 or more is priced differently from one company.
A holder pointed out that the terms in the shared Asilia file came from the first offering and do not match the current one, and that Asilia Credit Evergreen Fund is a separate vehicle with one sleeve, no exit and a high-teens annual return. Her documents, not mine. The card now says so rather than presenting terms that may be wrong.
This is exactly what shared files are supposed to do: put the terms where enough people can see them that somebody spots the error. If a shared file disagrees with your own paperwork, type over it. Your numbers always win.
The new version went up fast, so it has been put through a full test pass. Two real problems turned up and both are fixed.
A short deal name could pick up the wrong terms. A position named with just a couple of letters would quietly match a shared deal file that happened to start the same way, and inherit its sponsor, hold and multiple without saying so. A partial match now needs a proper amount of the name to agree. An exact name still matches at any length.
An apostrophe or a quotation mark in a deal name broke its card. The card would not open, and any angle brackets in the name were treated as formatting. Names with punctuation now work normally.
Neither changed any number in anyone’s results. If you find anything else, please say so.
If you bookmarked this as the Exit Timing Calendar, nothing is lost and the link is unchanged. The calendar is now the Liquidity Outlook tab, and there are two more tabs beside it. The page opens on the new one, so this is the change you are noticing.
Everything you hold in one place: committed, funded, still callable, allocation, and a card per deal you can open for its terms. At the top, two multiples side by side — what the sponsors project, and what the same deals are expected to return once the outcomes that go nowhere are weighted in. Most tools show you only the first.
There is also a year-by-year table of capital calls going out against preferred income coming in. Exits are deliberately not on it: a preferred return is promised and an exit is hoped for, and adding them together is the most misleading thing one of these tools can do. Exits stay on the Liquidity Outlook tab.
The tool ships with a small shared file for each of the common GC deals, carrying the sponsor, the vehicle, the structure, the preferred rate, the hold, the fees and when the sponsor says it pays out. If your deal name matches one, all of that fills itself in and you only supply your numbers: what you committed, what you have funded, and when.
Anything you type wins over the shared file. It only fills what you left empty and never argues with you. A deal nobody has shared still works exactly as before.
Nothing personal is in a shared file. There is a new Thesis column for why you did the deal, and that stays in your spreadsheet, on your machine, like everything else.
The assumptions, the rules the tool enforces, and a plain list of what it cannot tell you. Worth two minutes before you trust any of the numbers.
In v1.1 a fund only paid out over several years if you told it how many investments it held. That was the wrong question. Whether a fund sells down over time has nothing to do with how many things are in it — it is simply what funds do.
So anything paying a preferred return or a preferred return is now treated as a fund automatically, and pays out over a window, with nothing to fill in. If you hold a single company that pays a preferred return, put 1 in the Deals in fund column and it will exit on one date instead, the way a company being bought actually happens.
There are two new optional columns, Liquidity from and Liquidity to, counted in years from when you funded the deal. If a sponsor has said “expect distributions in years five through eight”, put 5 and 8 in those columns and that is exactly what the tool will use.
Leave them blank and it assumes the sell-down runs over the back 40% of the hold, which is roughly what most sponsors describe anyway. Worth knowing: a fund’s pay-out window and its stated life are not the same thing. A property fund can finish selling in year six and formally wind up in year seven.
The deal count still matters for one thing only: a venture fund holding 20 or more companies is priced differently from a single company. That has not changed.
A fund that holds twenty or thirty companies behaves nothing like a single company, and the first version priced them the same way. The old maths gave every venture position a 30% chance of returning nothing. For one company that is fair. For a fund of twenty it would take every company in it failing at once, which has never happened to a real fund.
Funds now use their own set of odds, taken from what venture funds have actually returned rather than from anything invented here. A useful side effect: it puts the sponsor’s own target multiple at roughly the top 5% of outcomes, which is where a target belongs. Something to aim at, not the expected result.
A fund sells its holdings gradually, so the cash arrives over a stretch of years. The tool used to drop the whole lot into a single year, which for something meant to be a calendar was the bigger mistake of the two. Anything holding more than one deal now spreads its payout across the years around its exit.
This moves no money. It only puts it in the right years, and your lifetime totals come out exactly the same either way.
There is a new column in the tracker called Deals in fund. Put 1 there, or leave it empty, and nothing changes from before. Put the real number in and your funds stop being priced like single companies. If you are not sure how many the fund holds, ask the sponsor.
A single company being bought is still one event on one date, so leave those at 1.
Drop in a tracker and get a year-by-year picture of when cash might arrive, how much has arrived by any given year, what the whole book returns over its life, and the shape of the distribution behind all of it.