Report · October 2026

Your AI will answer anyway.

What an AI needs before it reads your finance data, worked through on Marlow Systems, a company we invented with the problems real companies have.

Harnace9 min readUpdated

Harnace builds a finance context layer, so we have a stake in this argument. Where the report says something about AI or finance data, it cites the research behind it, and the worked example is a company we invented.

01 · The problem

Every system is connected, and none of them agree.

Connecting an AI to your systems takes a few clicks. Claude and ChatGPT can each read a ledger or a CRM through a connector, and the connection reports that it works.1 A connector gives a model a way to call a system. Nothing in it says which system’s number is the right one.

What the connection carries is each system’s own version. The ledger counts ARR from the day a contract line enters service. The CRM counts a deal from the day it closes. The workbook your team keeps by hand counts by a rule someone wrote two years ago and never wrote down, and the people who keep a workbook tend to trust it more than its errors deserve.2

Data Science and Finance would sometimes provide diverging answers using slightly different tables, metric definitions, and business logic.

Airbnb’s data team, on why it built one place for its metrics, How Airbnb achieved metric consistency at scale

An AI given all three picks one, often without saying which, and gives you a number with the same confidence either way. Researchers who test models on questions with more than one reading find the same thing: a model tends to settle on one reading and answer it.4 Nothing in the answer tells you a choice was made.

02 · A worked exampleExample company. Marlow Systems is a company we invented to show how a finance team uses Harnace. Its people and numbers are made up.

What wrong looks like at Marlow.

Marlow Systems is invented. Its traps are the kinds we meet when we tie a company’s figures to the report its finance team already trusts. Dana Whitfield, its VP Finance, asks one question.

The questionMarlow · 30 September 2026

What was Marlow’s ARR at 30 September 2026?

The ledger, under ARR v1
$3,810,000The definition Dana Whitfield approved: the annual value of every contract line in service on the day.
Tessaly Labs
$24,000An expansion closed on 30 September. The CRM counts it that day. The ledger counts it from 1 October, when service starts.
Ondine Studios
$0Two accounts in the CRM, $152,000 and $36,000. One customer in the ledger at $188,000. The dollars agree and the customer count doesn’t.
Redwood Charter
$12,000The deal is $140,000 with a $12,000 setup fee. The contract lines are $128,000. A setup fee doesn’t recur, so it isn’t ARR.

Before any of that, 1 invoice arrived twice from the ledger. Read it twice and revenue is high by one invoice.

Each of these is two systems keeping their own rules, and each system is right by its own.

An AI reading the raw exports sees all of it and can’t tell which rule Marlow chose. So it picks, and the answer reads as right whichever it picked.

03 · The objection

A better model can’t read what was never written down.

Models keep getting better at reading across systems. Some of what a finance answer needs isn’t in any system to read, and a better model still answers when it can’t know.5

even as models get more advanced, they can still hallucinate, confidently giving wrong answers instead of acknowledging uncertainty.

OpenAI, on why language models hallucinate, Why language models hallucinate

Your definitions. Whether ARR counts from signature or from service start, whether a setup fee counts, whether a paused customer churned. Your team decided these, and the same records support more than one answer.

Who is the same customer. A CRM account and a ledger customer under different names need a decision on record, with a person behind it. Banks have been asked for this since 2013: single identifiers, or one naming convention, for customers and accounts across their data.6

What changed and when. A definition that changed in July means June and August aren’t counted the same way. Unless the change is dated, nothing tells an AI. Public companies are already expected to define each metric they report, say when its method changes and consider recasting the earlier periods.7

Better reasoning over records doesn’t produce a decision nobody recorded. Those decisions have to be written down once, where every reader finds them.

ARRIllustration. The versions on this card show how a definition keeps its record. Marlow Systems's ARR in force is version 1.LAYER.DEFINE

ARR

Annual recurring revenue, as Marlow Systems counts it

Source
Ledger · contracts table
Object
Contract line
Counts from
Service start date
100% filled
Includes
Subscriptions, committed usage and recurring services
Excludes
One-time fees and overages
Value
Monthly fee, times twelve
Renewal date
Contract end date
71% filled, below the threshold
Approved by
Dana Whitfield, VP Finance, 28 May 2026
Version 3 of 3 · in force since Jun 2026Checked

04 · The layer

What a finance context layer is.

A finance context layer is a checked record of a company’s finance data, built from the systems it already runs, that its own AI reads.

a critical missing link is the absence of a business context layer

Juan Sequeda, Dean Allemang and Bryon Jacob, on why AI gets enterprise questions wrong, A Benchmark to Understand the Role of Knowledge Graphs on Large Language Model’s Accuracy for Question Answering on Enterprise SQL Databases

In their test, GPT-4 answered 16% of business questions correctly when it read an insurer’s database directly, and 54% when the same database came with a written model of the business.8 It is one database and 43 questions, so read it as a direction rather than a forecast. The direction is the point of a layer.

Harnace builds it in five steps.

  1. 01

    Connect

    Read access to your ledger and your CRM, or the exports your team already pulls. Where a system offers read-only access, that is all Harnace asks for.

  2. 02

    Check

    Each record is read on arrival: its source, its fields and whether it fits what that system says it holds. What fits is admitted. Anything else waits for a person, with the reason.

  3. 03

    Place

    Every record takes its place in one schema, and records that describe the same customer are tied together on the record.

  4. 04

    Define

    Your definitions are written down, approved by a named person and dated, so a change in July shows as a change in July.

  5. 05

    Read

    The AI you already use reads it through one read-only connection, and every figure it returns names the records it came from.

Behind one answerLAYER.TRACE

Behind that answer is one round trip. Your AI asks Harnace what Marlow's ARR was at the end of September and what changed it. Harnace finds the two definitions that answer it, ARR v1 and Customer v1. ARR v1 counts from each contract line's service start date and monthly fee, and Customer v1 counts from the customer field. Those fields come from contract lines in the ledger, deals in the CRM and rows in the ARR workbook, each admitted when it arrived. Harnace reads the ledger and the CRM through one connection each, and the workbook from the copy you dropped in. The figures come back through the two definitions, and the answer goes back to your AI with its sources: $3,810,000 at the end of September, up $105,000 from August's $3,705,000. New business added $110,000 and expansion $50,000. Contraction took $20,000 and churn $35,000.

05 · In practice

What changes for a finance team.

Where two systems disagree, you see the difference in dollars, with its cause, before anyone asks. Reconciling means explaining each difference, not only finding it, as the banking supervisors put it.6

The number your AI gives and the number in your board pack are the same number.

When someone asks where a figure came from, the answer is the records it was built from, each one named.

A definition changes once, on a date, with a name beside it. Every reader sees the change the same day.

MapLAYER.MAP
Marlow SystemsRead onlyDana Whitfield, VP Finance

Context map

Today, 6 Oct
  • 23 current
  • 5 waiting on you
HubSpot CRMRillet ledgerARR workbook by handBank export CSVBrex cardsDeals 221Customers 68Contract lines 596Invoices 51ARR tab SepBank balances 2Card transactions 1,912Close dateDeal typeDeal amountCustomer IDService start dateMonthly feeContract end dateDue dateAmount openMerchant categoryPosted dateCredited bookings v1Customer v1ARR v1ACV v1Receivables v1Cash v1Spend by category v1Commissions SepClaude DanaMonthly pack SepChatGPT RaeCash brief week 41

The Context map in Harnace’s console, as Marlow’s finance team sees it.

06 · The other way

Building it yourself.

You can. Many finance teams start with a data warehouse, a few models and a definitions page in a wiki. The first version is the easy part.

The work that never stops is keeping it true: a new field in the CRM, a definition changed at the board’s request, an acquired customer under a third name. Gartner tells teams getting their data ready for AI that the work is not one and done.9 If you have that today and someone owns it every week, you may not need us.

07 · Questions

Questions finance leads ask.

We already connect Claude to our ledger. Isn’t that enough?
It gives Claude access.1 It doesn’t tell Claude which of your systems’ rules to use, which records are the same customer or what changed when. That is the layer.
Does Harnace change anything in our systems?
No. Harnace only reads, and a test fails our build if any part of it tries to write to a ledger, a CRM, payroll or a bank.
Do we have to clean our data first?
No. The check shows what needs a person, with the reason. Much of what looks like messy data is two systems keeping different rules.
Which AI can read it?
Claude, ChatGPT, Claude Code, Codex and Cursor, each through one read-only connection, and any other AI your team uses that can connect to an outside source.

08 · Sources

The research behind this report.

  1. Model Context Protocol. Specification: Tools. modelcontextprotocol.io, version of 28 July 2026.
  2. Raymond Panko. What We Don’t Know About Spreadsheet Errors Today. Proceedings of the European Spreadsheet Risks Interest Group, 2015.
  3. Robert Chang and colleagues, Airbnb. How Airbnb achieved metric consistency at scale. The Airbnb Tech Blog, 30 April 2021.
  4. Irina Saparina and Mirella Lapata. AMBROSIA: A Benchmark for Parsing Ambiguous Questions into Database Queries. NeurIPS, 2024.
  5. OpenAI. Why language models hallucinate. openai.com, 5 September 2025.
  6. Basel Committee on Banking Supervision. Principles for effective risk data aggregation and risk reporting. Bank for International Settlements, January 2013.
  7. US Securities and Exchange Commission. Commission Guidance on Management’s Discussion and Analysis of Financial Condition and Results of Operations. Release 33-10751, 30 January 2020.
  8. Juan Sequeda, Dean Allemang and Bryon Jacob. A Benchmark to Understand the Role of Knowledge Graphs on Large Language Model’s Accuracy for Question Answering on Enterprise SQL Databases. arXiv, 13 November 2023.
  9. Roxane Edjlali, Gartner. Lack of AI-Ready Data Puts AI Projects at Risk. Gartner Newsroom, 26 February 2025.

Bring one report you trust. We’ll show you where your systems disagree.

Talk to us

Used to reply, nothing else. Privacy