Investor reporting for a manager with hundreds of investors across several funds

The situation

A manager reports to hundreds of investors across several funds every quarter.

Each investor gets a statement. It shows what they committed, what has been called, what has come back and what their stake is worth.

The figures come from two places: the administrator’s investor records and the fund’s own accounts.

They do not always agree, and the statements are put together by hand from both.

The work is scoped, and the build has not started. What follows is the problem and the approach we agreed.

Why it is hard

Most reporting teams check the totals. If the calls across all investors add up to the fund’s call, the quarter looks clean.

That check misses the mistakes that matter most to an investor.

A call booked to the wrong investor leaves the totals exactly right. So does an investor called past what they signed up for.

Only a payout left off a statement moves the total. Even then, the total cannot say whose statement is wrong.

The level of a check matters as much as the check itself. Take one investor with 100 committed to one fund and 150 to another.

In the first fund, calls are booked in the investor’s own currency and converted at each call’s rate. The investor ends up 110 percent called, past their commitment.

Across both funds, the same investor is only 62 percent called, and a check at that level passes. The breach is real, and the check cannot see it.

The approach

We will build one set of figures from both sources, then check every investor before any statement goes out.

  • Map both sources to one set of fields: commitments, calls, payouts, fees and value, for each investor in each fund.
  • Reconcile the two sources line by line, and hold any break for a person before it reaches a statement.
  • Check each investor against their share of every fund total, and against their own commitment, fund by fund.
  • Produce every statement in one run, from the checked figures only.
  • Send each flagged statement to a person with the reason attached. The rest go out without anyone reading them.

Before it touches a live quarter, we will run it on a past quarter that has already gone out. Every difference from what investors received gets explained, one by one.

That proves the checks catch what people caught by hand, and shows what people missed.

A worked example

This is the method on a synthetic quarter, not a result. A fund has 240 investors, and three mistakes are planted in its books.

Synthetic example. The three planted mistakes in one quarter for 240 investors, and what each check sees.
Planted mistake Check on fund totals Check on each investor
One call booked to the wrong investorTotals agreeTwo statements flagged
A late-close investor called past the commitmentTotals agreeOne statement flagged
A payout of 15 thousand left off a statementOff by 15 thousand, nobody namedOne statement flagged
Everything elseNothing to act on236 statements go out unread

A check on the totals finds one problem, the missing payout of 15 thousand. It cannot say which of the 240 statements is wrong.

Statements flagged for a person to read Check on the totals only one problem found, nobody named 0 Payment on the wrong account booked to the wrong investor 2 Asked for more than agreed more than the investor signed up for 1 Payout left off a statement paid, but not shown 1 Flagged for a person to read of 240 statements 4 0 1 2 3 4 Synthetic example
Statements flagged for a person to read Check on the totals only one problem found, nobody named 0 Payment on the wrong account booked to the wrong investor 2 Asked for more than agreed more than the investor signed up for 1 Payout left off a statement paid, but not shown 1 Flagged for a person to read of 240 statements 4 0 1 2 3 4 Synthetic example
Figure 1. One quarter for a fund with 240 investors and three planted mistakes: what each kind of check finds. Synthetic example.

Checking each investor names four statements, and says why for each. The other 236 can go out without anyone reading them.

The call booked to the wrong investor shows up twice. One statement is short, and the other is long by the same amount.

The late-close investor is caught only because the check compares each call with that investor’s own commitment. On totals, the investor is invisible.

Where it breaks

  • The checks compare figures with each other. If a source is wrong in the same way everywhere, everything agrees and is still wrong.
  • It depends on the two sources describing the same investors in the same way. A renamed or merged investor needs a person to match it once.
  • Fees and side terms that exist only in documents, not in either source, are outside what it can check.

If your statements are checked only against fund totals, check one past quarter investor by investor.