fundregtracker.
Last verified 2026-10-25

DDQ & RFP answering from an approved answer bank

Can AI answer investor DDQs and RFPs? Yes for the draft — matching each question to your approved answer bank and writing a first response in your house language. No for the send: an outdated or subtly-wrong answer to an investor is a representation, so a human still approves every one.

The painDuring a raise a manager fields a stream of due-diligence questionnaires and RFPs — fundraising, operational, ESG — each asking the same 200 things in a different order and format, some as portals, some as spreadsheets, some as Word. An IR or compliance person hunts the last approved answer, pastes it, adjusts it to the question, and repeats, hundreds of times per document, while the flagship raise waits on the turnaround.
What AI does todayMatch each incoming question to your bank of previously-approved answers and draft a response in your own wording, flagging where no approved answer exists and where two answers conflict. The boundary: the semantic match ("describe your BCP" = "outline business-continuity arrangements") is the AI slice; the answer bank itself, the approval workflow and the version control are ordinary content management you may already run.
Proof it's realVendor-claimed, established category. Purpose-built DDQ platforms for private-markets IR are an established product category — Ontra DDQ, for one, is built around an approved-answer library for managers fielding 15–30+ questionnaires a week in a flagship raise. Client counts and time-saved figures are the vendors' own; the category's existence and adoption in IR teams is not in doubt. Newest evidence: 2026.
What it can't doIt cannot approve the answer — that is where the human sits: a DDQ response is a representation to an investor and often to their regulator, so a person confirms each material answer is current and correct before it leaves, and every one traces to an approved source. An answer that was true last fund and is now stale reads as accurate and isn't.
The real alternatives
  • The IR team and the shared drive — the status quo: past DDQs in a folder, searched by hand. Free, and workable until volume spikes; the cost is turnaround time mid-raise.
  • A DDQ/RFP platform (Ontra/Dasseti/DiligenceVault-class) — the answer bank, workflow and AI drafting as a product; wins for managers with standing questionnaire volume.
  • An answer bank on the tools you already run — SharePoint plus an internal LLM gateway does the matching-and-drafting job for teams whose group restricts external vendors; the curation burden is the same either way.
  • IR consultants for the raise — surge capacity, priced per engagement; wins for a one-off flagship raise without standing volume.
  • Whichever route: the curated answer bank is the asset — the AI is only as good as the library it drafts from.
What you need in placeA curated, dated, owned answer bank (building it is the real project — the tool is secondary); a compliance approval workflow with staleness review dates on every answer; and ownership — IR runs the process, compliance owns what goes out. If your answers live in twelve people's sent folders, start there, not with a vendor. And in a group, client-facing text usually needs central-compliance sign-off wherever it's drafted — build that approval path in from day one.
Effort & cost
  • Weekend script — an LLM with your past approved DDQs pasted in, drafting answers to a new questionnaire for you to check; free, immediate on a live raise.
  • Off-the-shelf — DDQ platforms, typically five-figure annual subscriptions.
  • Real project — an answer bank wired to your document store with approval workflow and staleness flags; five figures plus the curation effort, which dominates.
  • Fielding a handful of questionnaires a year? The shared drive plus a good index is honestly fine.
What to watchStaleness is the risk, not blank answers — the tool will confidently reuse an answer that a policy change quietly invalidated. Keep the answer bank dated and owned, and watch for answers pulled from a source past its review date.

Prompt to try: draft a DDQ from the approved answer bank

The prompt matches each incoming DDQ question to your approved answer bank. It returns a linked workbook of draft answers, with the source answer and its approval date beside each one.

  1. 1Map the sourcesDDQ, approved answer bank, policies
  2. 2Trace the preparationAnswer owners, approval dates
  3. 3Match and reconcileQuestion wording, standard topics
  4. 4Build the linked workbookAnswer sheet, source cited per line

5. Controls (must pass)Every question answered or marked a gapAnswers only from the approved bankNo answer older than the age limitCited policy is the current versionFour-eyes sign-off

6. Measured over timeBack-test finds every known difference0 corrections after sign-offCycle time vs manualRolls forward with 0 manual edits

Before you start:

You are helping an investor relations or client service analyst draft answers to the attached DDQ from [investor] using our approved answer bank. A human reviewer checks everything you produce. You do not write new regulated statements. Where no approved answer exists, you say so.

I attach:
- DDQ: [the questionnaire]
- Answer bank: [approved answers with answer ID, owner, approval date and the policy section and version each cites]
- Policies: [current policy documents the answers cite, with their version and date]

Work through the six steps below. Show the result of each step before you move on.

STEP 1. MAP THE SOURCES
For each file, record: who produced it; the as-at date it states (not the date it was sent); the currency; what one row or section represents; the fields that identify a question; the value fields and how each is labelled; and any subtotals, hidden rows, merged cells or footnotes that change how it should be read. Where the files differ in as-at date, period or currency, list each difference and say how you will handle it: convert at an FX rate from the Inputs tab with its source, or compare like periods only. Stop and ask me only if a difference means two figures cannot validly be compared.

STEP 2. TRACE THE PREPARATION
For each bank answer, note its owner, approval date and the policy it relies on. Flag answers older than [age limit] or citing a policy that has since changed.
Label each statement "stated in the file" or "my inference".

STEP 3. MATCH AND RECONCILE
3a. Keys. List question numbers in the DDQ and answer IDs in the bank.
3b. Wording. Describe how the DDQ phrases topics compared with the bank (for example "business continuity" vs "BCP").
3c. Standardise. Assign each question a standard topic from a numbered list.
3d. Map. Match each question to a bank answer with match method ("exact", "same topic" or "suggested, needs review") and reason. A suggested match is never confirmed.

STEP 4. BUILD THE LINKED WORKBOOK
Build an .xlsx file with these tabs, in this order:
- Index: a link to each tab, one line on what it holds, the as-at date, and the steps to refresh the workbook next period.
- Inputs: investor, due date, maximum answer age, and the current version and date of each policy the bank cites; plus the as-at date of each source file, with any differences between them and how each is handled; any FX rates needed, with their source and date, and the tolerance for agreement with documents (0.00 wherever exact agreement is required). Each value carries its source beside it, and every formula that needs one points here.
- _Source tabs: each file exactly as received, one tab per file. Never edit these tabs.
- Map: questions matched to bank answers, by question number and bank answer ID, with the match method from step 3d ("exact", "same topic" or "suggested, needs review"; control e counts "exact" as the shared-ID match and "same topic" as the standardised-name match), the reason, and the person who confirmed each suggested match and the date.
- Answers: one row per question, with the draft answer, bank answer ID, owner and approval date looked up through the Map tab, the policy relied on with its section and version cited, and a current-version check against the Inputs tab as a formula; plus a gap status as a formula: "unmatched" where the Map tab links no approved answer, "stale" where the approval date is older than the maximum answer age on the Inputs tab or the cited policy is not the current version, "conflicting" where the Map tab links two or more bank answers whose texts differ, otherwise "OK". Each row carries its source document and the page, cell or row reference for each figure.
- Gaps: a formula-driven list of questions with no approved answer, stale answers and conflicting answers, with the question number and the gap status from the Answers tab.
- Exceptions: one row per failed control, untraced or disagreeing figure, unconfirmed match and open query, with a type column ("failed control", "untraced or disagrees", "unconfirmed match", "query" or "timing difference"), its owner, status ("open" or "closed"), expected clearing date and the approver's sign-off (name and date).
- Checks: the controls in step 5.
- KPIs: the measures in step 6.
- _Log: the audit trail in step 6, with the names of the preparer and the approver.
Every derived number is a formula that leads back to a _Source tab or the Inputs tab. Nothing is typed in as a value. Use Excel tables and XLOOKUP or INDEX/MATCH. Wrap lookups in IFERROR and show "Not found", never zero. Dates as yyyy-mmm-dd, negatives in brackets, units in every value header, header rows frozen, no decorative formatting.

STEP 5. CONTROLS (EVERY ONE MUST PASS BEFORE SIGN-OFF)
On the Checks tab, write each control as a formula that returns TRUE or FALSE, with the count or difference beside it. A FALSE is not a score to improve: it blocks sign-off until it is resolved, by correcting the entry with a note or by getting the source corrected. An explanation alone does not clear it. The only item that may stay open at sign-off is a timing difference with an expected clearing date: it is listed by name on the Exceptions tab as a reconciling item and re-checked next period. A document tie-out failure is never a timing difference and can never be carried. Show every FALSE at the top of the Index tab under "Checks failing".
a. Complete: every DDQ question has a row on the Answers tab. Target: 0 unexplained rows.
b. Gaps agree: the Gaps count equals the count of unmatched, stale or conflicting rows on the Answers tab. Target: a difference of 0.
c. Formula-linked: every calculated cell is a formula (test with ISFORMULA), and there are no #N/A or #REF errors. Target: 100%.
d. Tied to documents: on the Answers tab, every factual statement in a draft answer appears in the cited bank answer or policy, with the policy section cited. Every quote and figure must be traced (it cites its document and page) and must agree: a quote matches the document word for word, and a figure equals the document within the tolerance on the Inputs tab and no wider. Any item that is untraced or disagrees goes to the Exceptions tab at once. If the document itself looks wrong, for example a bank answer that cites a policy section the current policy no longer contains, raise it as a query; never change the workbook to make it agree. Target: 100%.
e. Matches confirmed: count the rows matched by shared ID, by standardised name and by suggestion. Target: 0 suggested matches left unconfirmed at sign-off.
f. No new statements: every sentence in a draft answer comes from an approved bank answer or a cited policy section. A question with no approved answer reads "unmatched" and carries no drafted text.
g. Answer age: no draft answer relies on a bank answer older than the maximum age on the Inputs tab.
h. Policy version: every cited policy is the current version.
i. Open exceptions: count the Exceptions rows that are not closed, leaving out only named timing differences with an expected clearing date. Target: 0.
j. Four-eyes: the _Log names the preparer and the approver, who must be different people, and the approver signs off every Exceptions line.

STEP 6. REUSABLE, AUDITABLE AND MEASURED
- Reusable: next period, a person replaces the _Source tabs and updates the Inputs tab, and every other tab recalculates. Keep the Map tab so confirmed matches carry forward.
- Auditable: on the _Log tab, list each source file (name, producer, as-at date, date received, row count, control total), every rule and match you applied with the reason, every assumption, and who prepared and approved. Never overwrite source data. A correction goes in a separate column with a note.
- Measured: add a KPIs tab that the team fills in each period: back-test recall (run on a past period with known answers; share of known differences found; target 100%, and do not adopt the workbook below that); items agreed first time with no manual fix; items flagged that turned out fine; corrections made by the reviewer before sign-off; corrections found after sign-off (target 0); manual edits outside the Inputs and _Source tabs at refresh (target 0); and cycle time in hours from receiving the files to sign-off, against the manual baseline.

If your tool cannot create an .xlsx file, give me each tab as a table plus the exact formula for the first row of every calculated column.

At the end, give me questions answered from the bank, questions needing a new answer, and stale answers, the result of every check, and a list of anything you were unsure about.

What good output looks like:

How to know it worked:

Who signs off: Each answer owner approves their answers, and compliance signs off the DDQ before it is sent. The workbook is the working file, not the record.

In practice: new answers approved for this DDQ go back into the bank, so the next one starts with fewer gaps.

Questions operators ask

Can AI fill in a DDQ by itself?

It can draft the whole questionnaire from your approved answer bank — that part is real and shipping. What it cannot do is warrant the answers: each material response is a representation, so human approval per answer is the control, and the audit trail of who approved what is your examiner answer.

Do we need a DDQ platform, or is our shared drive enough?

Volume decides. A handful of questionnaires a year: the shared drive with a maintained index is fine. Fielding them weekly mid-raise: the platform's answer bank, workflow and semantic matching pay for themselves in turnaround time — but only after you've curated the library it drafts from.

Related: investor onboarding & AML/KYC and the Fund AI desk.

↑ Top