Home / DPA Insights / Data & AI
Why I Stopped Trying to Make AI “Write” the Report
A client told us you can’t automate an opinion. Testing it on real client data showed the problem was never the AI. It was the missing structure underneath it.
Bad AI output did not come from the AI. It came from the absence of structure underneath it. Before a single prompt was written, the team built documentation. It was not a style guide. It was a record of how an experienced analyst actually thinks. Peer data stopped being a pile of screenshots. It became structured input: this gap, for this bank, for this reason. The analyst stayed in the process. They stopped starting from a blank page and chose and refined from options grounded in the bank’s context.
A few months ago, I sat across the table from a client whose first reaction to our proposal was not excitement. It was suspicion. We were pitching a way to speed up digital banking consultancy reports. He leaned back and said, “This is subjective. You can’t automate an opinion.” Then he asked the question that actually mattered: how do you make a machine understand what a good recommendation even looks like?
I didn’t have a clean answer that day. But it stuck with me, so instead of making the case in the next meeting, we decided to test it properly — build something, throw it at real client data, and see where it actually broke.
It was never the AI
The pattern that showed up was almost embarrassingly simple. It was never the AI that produced bad output. It was always the absence of structure underneath it. Feed a model raw screenshots of competitor apps and ask it to “find gaps,” and you get generic, forgettable filler — the kind of report that could describe any bank because it doesn’t really describe yours. The model wasn’t lazy. It just had nothing to reason from.
We flipped the order of operations
So we flipped the order of operations. Before a single prompt was written, we built documentation not a style guide, but a record of how an experienced analyst actually thinks. Why is this gap worth flagging for this bank and not another? What makes a sentence sound like consulting advice instead of a Wikipedia summary? That document became the thing every later step had to answer to.
It reminds me of watching a tailor work. The sewing machine is fast, precise, tireless — but it is only as good as the pattern laid under the fabric. Hand it the wrong pattern and it will stitch a flawless, perfectly wrong garment, ten times faster than a human could’ve made the same mistake. Speed was never the problem. Direction was.
Speed was never the problem. Direction was.
From a pile of screenshots to structured input
Once the documentation existed, everything else got easier to trust. Peer data stopped being a pile of screenshots and became structured input — this gap, for this bank, for this reason, ranked against what actually matters to customers and where the industry is heading. Prompts were written section by section against that same documentation, so the report didn’t read like five different people wrote it.
The analyst never disappeared from the process — they just stopped starting from a blank page. Instead of writing, they were choosing and refining from options that were already grounded in the bank’s actual context.
The shift wasn’t really about making AI write reports faster. It was about making sure that what it wrote was worth an analyst’s time to even read. Once that was true, the numbers followed on their own — 70% less manual effort per report, five times the output, and a team that finally got to spend its time thinking instead of typing which, it turned out, was where the real quality had been hiding all along.
The client’s first report
The client who asked me that question in the first meeting got his first report a few weeks later. He didn’t ask how we automated it. He asked who on our team had written the gap on his savings account onboarding flow — because it sounded like someone who actually understood his bank.
We told him it was the documentation talking. He didn’t quite believe us. That’s usually how you know the pattern was right.
At a glance: two ways to feed the model
| Raw input | Documentation first | |
|---|---|---|
| What the model gets | Raw screenshots of competitor apps | Structured input: this gap, for this bank, for this reason |
| What it is asked | “Find gaps” | Prompts written section by section against the documentation |
| What comes back | Generic, forgettable filler that could describe any bank | Options grounded in the bank’s actual context |
Start with how your analysts think
If your team is weighing AI for research or consultancy reports, we will start by documenting how your analysts actually think, before anyone writes a prompt.
Book a working sessionFrequently asked questions
Why do AI-generated consulting reports come out generic?
In the author’s testing, it was never the AI that produced bad output. It was the absence of structure underneath it. A model fed raw screenshots of competitor apps and asked to “find gaps” returns generic filler that could describe any bank. The model has nothing to reason from.
What should be documented before writing prompts for AI report writing?
A record of how an experienced analyst actually thinks, not a style guide. It explains why a gap is worth flagging for one bank and not another. It also explains what makes a sentence sound like consulting advice instead of a Wikipedia summary. Every later step, including the prompts, answers to that document.
How does structured input improve AI-assisted reports?
Peer data stops being a pile of screenshots. Each item becomes a specific gap, for a specific bank, for a stated reason. It is ranked against what matters to customers and where the industry is heading. Prompts written section by section against the same documentation keep the report from reading like five different people wrote it.
Does the analyst still have a role when AI drafts the report?
Yes. The analyst never disappears from the process. They stop starting from a blank page. Instead of writing, they choose and refine from options already grounded in the bank’s actual context.