I want to be upfront about something: for simple, flat data, InDesign's native data merge works fine. A spreadsheet of 200 names going into a single text frame on a business card? That's exactly what the tool was built for, and it does it well.
The problems start the second your data gets complicated.
The three failure modes I see over and over
First: nested or repeating data. Native data merge assumes one row = one page. The moment you have a product with multiple variants, a catalogue entry with a variable number of features, or anything where rows map to sub-items rather than pages, you're stuck. The tool cannot express that structure.
Second: conditional content. "Show the premium badge only if tier = 'premium'". Native merge has no conditional logic at all. You end up with show/hide hacks using white-on-white text, which breaks the moment someone changes a font or style.
Third: preview. To see what your merged document looks like, you have to actually run the merge and generate a new document. For a 500-page catalog, that takes two minutes per iteration. I've watched designers spend entire afternoons in that loop.
What I use instead
For anything beyond the simplest use case, I write a script. Usually ExtendScript, sometimes UXP if the client is on a recent enough version. The script reads the data source directly — a CSV, a JSON file, or in larger setups a direct database connection via a REST API call.
The main advantages:
- I can express any data structure, including nested arrays and conditional logic
- I can preview changes instantly by just re-running the script on a single page
- I can do things merge simply cannot, like generating multiple versions of the same page or reusing the same frame configuration across different document templates
For teams that need a GUI and don't want to touch code, EasyCatalog is the commercial solution I recommend. It's expensive — around $400 per seat — but if you're doing serious catalog work it pays for itself in a day.
The middle ground
If you're doing simple merges but hitting the preview limitation, there's a workaround: merge to a new document, check your work, close without saving, fix the template, repeat. It's not elegant but it's faster than waiting for a 500-page document to regenerate every time.
The real lesson is that native data merge is a proof-of-concept tool that Adobe never fully developed. It was adequate in 2005. Professional publishing workflows in 2026 have outgrown it.