Ask a model to "improve this table" and you get a table back. It looks plausible, the columns are still there, and the row count is roughly right. What you cannot see is what happened. A price may have been reformatted, a description trimmed, a category renamed to a synonym, and a row that was already fine may have been quietly rewritten for no reason.
The failure has three parts. First, the output is a whole new artifact, so reviewing it means comparing two tables cell by cell, which is exactly the work you were trying to avoid. Second, the model has latitude to change things you never mentioned, because a prose instruction sets a direction rather than a boundary. Third, there is no record of intent, so when a value downstream looks wrong you cannot tell whether the source was wrong or the revision introduced the error.
Structured output exists precisely because free-form text is hard to parse and integrate reliably; the standard account of this is that you define a schema with named fields and types so a program can consume the result without cleanup (see this guide to structured output and JSON mode). A revision prompt is structured output aimed at a very specific job: describing a delta.
There is a second, quieter reason. Models are trained to produce polished, finished prose, and that habit carries over into anything that looks like writing, including the cells of a table. The result is text that reads well and has drifted from the source, sometimes adding hedges or smoothing a fact into something vaguer (see this analysis of how models hedge by default and how to cut it). Citations and exact figures do not improve under polishing, so you want a format where the only legal content is a specified change.



