Chapter 4 of 13 · Funder road · About 15 minutes
Check each partner report against the agreement
Partner reports are arriving as PDFs, spreadsheets, survey exports and emails, and no two look alike. Before anything is added up, you need to know whether each number means what the agreement says it means.
You will learn: how to compare each partner report with the reporting agreement row by row, turn every gap into one plain question, and keep a gap log that improves next year's agreement.
Who this is for: the funder, usually a portfolio or grant manager, as partner reports start to arrive. You bring the reporting agreement, the shared data dictionary and the first reports from your funded partners (grantees or investees).
On this page: When reports arrive · Row by row · One question per gap · The gap log · AI first pass · Limits · Try it · Questions
What should you do first when partner reports arrive in different formats?
In short: Before you read the story or add anything up, lay each report beside the agreement and check what every number means. The format does not matter; the definition does.
Reports arrive the way each partner works: a PDF narrative, an Excel sheet, a survey export, numbers pasted into an email the night before the deadline.
The temptation is to copy the numbers into your portfolio sheet. That is where most portfolio errors start: a placement counted at six months sits next to one counted at 90 days, and the total looks precise while meaning very little.
The agreement you wrote after the onboarding call is the yardstick. It names each metric, how it is counted and when it is due; the shared data dictionary holds the full definition behind each row.
01 · COLLECT
Save every report, whatever its format, against that partner's record.
02 · COMPARE
Read each agreed metric against what the report says.
03 · ASK
Turn each gap into one plain question and send it within days.
04 · RECORD
Log the answer, and fix the agreement if a definition was unclear.
How do you compare a partner report with the grant agreement?
In short: Go metric by metric and give each one of four statuses: matches, different definition, missing, or not split. Only a match can go into the roll-up as it is.
Start from the agreement's list of metrics and read the report against it, not the other way round. Read the report first and its structure sets the agenda; an absent metric is hard to notice while you read what is there.
| Status | What it means | What you do |
|---|---|---|
| Matches | Same metric, same definition, same period | Accept it for the roll-up |
| Different definition | Reported, but counted another way | Hold it; ask for the agreed count |
| Missing | Due, but not in the report | Ask when it will come, or why it cannot |
| Not split | One number where the agreement asks for a breakdown | Ask for the split; use the total only where a total is enough |
Workforce fund example · fictional
A regional workforce fund supports four job-training partners, A to D. Its agreement counts enrolled as unique people, placement within 90 days of exit, retention in the same job at 12 months, and hourly starting wage by track. Partner C's report counts enrolled the same way, placement within six months, leaves out retention and gives one average wage.

None of the three gaps says anything about performance. Partner C may have placed more people than anyone; you cannot tell yet, because its count uses a different window.
How do you turn each gap into a question the partner can answer?
In short: Write one plain question per gap, name the agreed definition in it, and send all of them together within days of the report arriving. The partner should be able to answer each one from its own records.
A good question is short, specific and answerable. It names the metric and the agreed definition, and asks for something the partner can produce, like the three for Partner C in the slide above.
Send them while the partner still remembers. A week after submission, the person who compiled the report knows which spreadsheet each number came from; three months later, they may have moved on, and the answer becomes a guess.
Keep the tone clarifying, not auditing. You are checking that both sides mean the same thing by the same word. A funded partner often reports to several funders, each with its own template, so a different definition is usually a trace of another funder's form, not carelessness.
"Your report does not follow the agreement. Placement data is incorrect and retention is missing."
"Thank you for the report. We count placements within 90 days of exit; can you count yours that way, as agreed? And when will 12-month retention be available?"
The partner's side of this exchange is in Map every funder's ask to one evidence base.
What goes in a gap log?
In short: One row per gap: the metric, what the agreement says, what the report says, and the question you sent with the answer you received. It turns scattered emails into a record you can reuse.
Keep the gap log next to the agreement, one table per period. It answers the question every portfolio manager hears at board time: why is this partner's number not in the total?
| Metric | Agreement | Report says | Question sent / answer |
|---|---|---|---|
| Enrolled | Unique people | 80 people | None needed: matches |
| Placed in a job | Within 90 days of exit | Within 6 months | Can you count placements within 90 days, as agreed? / [date, count] |
| Retained | Same job at 12 months | Not reported | When will 12-month retention be available? / [date] |
| Starting wage | Hourly, by track | One average | Can you split starting wage by track? / [pending] |
Gap log template, filled in for Partner C (fictional). Copy the four columns and add a row per gap.
When an answer arrives, write it in the log, update the partner's number, and only then move it into the roll-up. If the partner cannot give the agreed count, record that too; a held number is still information.
When the definition itself was unclear, fix the agreement, not the partner.
If several partners read the same row differently, the row needs work. Rewrite it in the agreement or the data dictionary and tell every partner. As a team practice, keep a change log of who approved the new wording and from which period it applies.
Can AI do the first pass of the comparison?
In short: Yes, for the reading and the lining up. Give it the agreement table and one partner report, ask it to list gaps without filling in any values, and have a person review every row before a question is sent.
The first pass is repetitive: find each agreed metric in a long PDF or spreadsheet, quote it and compare the wording. AI tools do this well when you give them the agreement as a table and forbid guessing. Keep participant names and emails out of what you paste.
Prompt · paste into Claude, ChatGPT or your AI tool
You are checking a funded partner's report against our reporting agreement. Agreement table (one row per metric: name, definition, period, breakdown required): [PASTE AGREEMENT TABLE] Partner report: [PASTE OR ATTACH THE PARTNER REPORT] For each metric in the agreement table, in the same order: 1. Quote what the report says about it, with the page, sheet or line where you found it. 2. Give one status: matches, different definition, missing, or not split. 3. If the status is not "matches", write one plain, friendly question the partner can answer from its own records. Rules: - Do not calculate, estimate or convert any value. If a number is not in the report, write "not found". - Do not treat a similar metric as a match. If the definition differs in any way, say how. - Return a table with four columns: metric, agreement, report says, question.
A person reviews every row. The AI can misread a table or miss a footnote; it cannot know what the partner told you on a call; and the question goes out under your name, to a relationship you manage. Treat the output as a draft of the gap log, not the log.
ASK ANY TOOL, INCLUDING OURS
Ask: "For each partner that reported this period, which agreed metrics are missing, counted differently or not split, and which report does each gap come from?" In Sopact Sense, an Intelligence Cell can read each partner report on arrival with a prompt you configure, and every line of an AI Assistant answer links to a record you can open before you send a question. Claude or ChatGPT can query the same data through MCP.
What does this check not tell you?
In short: It tells you whether a number can be compared, not whether the partner is doing well. A clean match can sit in a weak program, and a gap can come from a strong one.
Nor can it confirm that a count is correct, only that it is defined as agreed; tracing a number to its records is covered in Make every number in your report match its source. Some gaps are timing: a 12-month retention figure cannot exist before 12 months have passed.
Once each report is checked, the matched numbers are ready to add up: Roll up and benchmark portfolio results shows how to handle the ones still held.
Try it on your own portfolio
- Pick one partner report that arrived this period, in whatever format it came.
- Copy your agreement's metrics into the first two columns of a gap log: metric and agreement.
- Read the report against each row and give it one status: matches, different definition, missing or not split.
- For every gap, write one plain question that names the agreed definition.
- Send the questions in one message within a week, record each answer in the log, and mark any row that more than one partner read differently.
Check your reasoning
For Partner C, only enrolled (80 people) moves forward as reported. Placement is held, because six months and 90 days are different measures. Retention is an annual figure, so the question asks when, not why. The single wage average is not wrong; it answers a different question than the agreement asks. Three questions, one message, sent while the partner still remembers.
Questions teams ask
What if a partner's definition is better than the one in our agreement?
Talk about it, but do not accept it for one partner only. If a six-month window suits your portfolio better, change the agreement for every partner, record who approved the change and from which period it applies, and keep earlier periods on the old definition. Until everyone moves, hold the different count and ask for the agreed one.
How quickly should we send clarifying questions?
Within a few days of the report arriving, in one message per partner. The person who compiled the report still knows where each number came from, and one message respects their time more than a trickle of emails. Wait until the roll-up is due and you are asking someone to reconstruct a spreadsheet from memory.
Do we check every metric in every report?
Check every metric due in the period the report covers. The agreement sets the rhythm: in the workforce example, enrolled is quarterly, while retention and starting wage are annual. A metric not yet due belongs in the log as "not due", not "missing", so your questions stay fair and the log stays short.
What if a partner cannot produce the breakdown or definition we asked for?
Record that answer in the gap log and ask what they can provide instead. Report the number as held, with a short note, rather than dropping it or forcing it into the total. Before the next agreement, decide whether the breakdown is worth the effort or needs a change to the intake form. A breakdown no partner can produce is a sign the agreement asked for too much.