Due Diligence

What belongs in a technical due diligence report

A technical due diligence report is for the person signing. What the first page has to say, the seven questions behind it, how a finding should read, and what to distrust in a report you've been handed.

You’re about to invest in a software business, or buy one, and somebody technical is going to hand you a report about it. Here’s what a technical due diligence report has to contain to be worth its fee, and how to spot one that won’t help you decide.

Page one is the position

The first page says what the reviewer would do in your place: proceed, proceed at a lower price, proceed on conditions, or walk away. Then the three or four findings that drove it, each with a figure beside it. If you read nothing else, that page should be enough to take into the room.

A reviewer who won’t commit to a position has written you a description. (Descriptions are cheaper, and the seller’s own documentation will give you one for free.)

The seven questions

Every section after page one answers one of these. If the report skips one, it should say why.

1. Is the product what the deck says it is?

Decks describe the product as it will be. The report says what runs today, who uses it, and which parts are still a prototype.

2. What would you own on day one?

The code, and the accounts it runs in. The licences it depends on. Whether every contractor’s work is assigned in writing, and which open-source components carry terms that matter in a sale.

3. Who does it depend on?

Every system has a few people it can’t do without. The report names the roles and says what would stop if each one left. If the answer is “releases”, that’s a price conversation, and it belongs on page one.

4. Will it carry the plan?

Will the architecture take ten times the customers, or does it need rebuilding at three? A rebuild is a cost, and it goes in the model before you sign. Pick the multiple that fits the plan: for a marketplace it might be three times the listings on the same number of customers.

5. What does it cost to keep?

Hosting, licences, third-party services and any AI spend charged per call. Then the maintenance nobody budgeted for: the framework two major versions behind, the component its vendor stopped supporting last year.

6. How is it built and shipped?

How a team releases tells you more than the code does, because a team that ships predictably can fix what the review finds. Are there tests, do they run, and would they deploy on a Friday?

7. Is the data safe, and would it survive an audit?

Security and data handling, measured against what the business has promised its customers and what its contracts say. The report should say which controls the reviewer saw working and which it only read about.

How a finding should read

Engineers rank findings by how bad the code is. You need them ranked by what they’d cost you, because an ugly module nobody touches costs nothing and a tidy one that only one person understands can cost you the deal.

Each finding gets the same four lines. Here’s one I’ve made up, to show the shape:

Finding 4. Billing depends on one engineer. What it is: the invoicing service has no tests, and one person has changed it in the last two years. What it costs: about six weeks of a second engineer’s time to make it safe to hand over, or a retention arrangement for the one who knows it. Does it change the decision: no, if it’s priced in. How to check it: the repository history, and the hour with the team.

Most findings won’t change the decision, and the report’s job is to make the two or three that do impossible to miss, so a forty-page document that lists sixty findings at the same weight has failed at the one thing you paid for, whatever else it turned up.

What it must say it didn’t see

Every review runs short of something. A repository that arrived late, a supplier contract nobody could find, an engineer who was on holiday the week it mattered. The report lists them.

I’d take a report with a named gap over a clean one, because a gap you know about can go into the warranties and a gap nobody mentioned can’t.

The appendix is for checking

The engineering detail goes at the back: the dependency list, the architecture as found, the test results and the notes from each conversation. It’s there so your own technical adviser, or the next reviewer, can check the reasoning on page one. You shouldn’t need it to decide.

Warning signs in a report you’ve been handed

If the seller commissioned the report, or somebody else paid for it, check four things before you rely on it.

  • No position on page one, or a position qualified until it says nothing.
  • Findings ranked by severity with no money beside them.
  • No list of what the reviewer couldn’t see.
  • A scope that doesn’t match your question. A review of code quality won’t tell you whether the business survives losing its lead engineer.

If you’re the founder

Somebody working for the other side will write this report about you. How technical due diligence works covers the order a reviewer works in and the access they’ll want.

Keep reading

Related

When should a founder hire a CTO?

Later than most founders expect, and earlier than they'd like. Five signals that the technical decisions have outgrown the person currently making them.

Read it

Work with me

Losing time or money to something you can’t fix?

I reply within one working day to arrange a free 30-minute call.