ELTIF reporting in five languages

· Igor Sabol ·

4 min read Original article ↗

Every quarter, I had to get five language versions of an investor report out on a deadline that did not move. One Excel workbook, a Word template, and a macro controlled by a language switch produced the PDFs. Translation was only one part of the work, and it rarely held publication up.

I kept the fixed text in a Languages sheet: one row per label, one column per language. The switch drove the lookups behind chart legends, table headers, and other fixed text. Filling the sheet took work once; after that, a new label meant a new row.

Each quarter, I also needed fresh prose. Machine translation made the first pass on the executive summary, commentary, and per-deal blurbs, then native-speaking colleagues corrected each version. In 2012, a translation round took around two weeks. By the late 2010s it took days because colleagues were correcting a translation rather than starting from scratch.

The handoffs were what held me up. Accounting signed off the numbers some time after quarter-end, and the PDFs shipped a few weeks later. I could not write the commentary until the numbers landed. Reviewers could not start until the English copy was ready, and the reviewed text had to return to the workbook before I could rebuild the PDFs. The last language to come back set the publication date.

New investments caused me more trouble early because every write-up started from a blank page. The deal team was already preparing investment notifications at closing for investor sign-off, but those only became reliable enough to reuse later. Once they did, they contained most of what I needed. I adapted them and wrote fresh copy when no notification existed. It did not remove the review sequence, but I stopped writing the same story twice.

Late accounting changes were harder. A valuation adjustment, a missing investment, or a redemption recorded in the wrong place could arrive after I had sent some versions out for review. In a single-language report, one correction meant changing the workbook and rebuilding one PDF. Here I rebuilt five. If the number appeared in the commentary, I sent that sentence back through translation and review too. Each language reopened work that had already been reviewed.

I worked with two outside firms, one after the other, to write the English commentary and handle the translations. Both provided human-reviewed translations, but the quality varied enough that the internal review consumed the time outsourcing had saved. I was also testing AI translation internally. It did not meet the standard for a regulated investor deliverable, so I brought the work back in-house.

When the source system was replaced, I tried translating its finished English report. That would have removed the workbook and Word macro, but I never got it into production. The report's structure and layout did not survive translation reliably. Fixing it needed work that was not on the roadmap. The new system produced single-language Quarterly Investor Reports natively, but not the multilingual versions. I understood why no platform team wanted to take that on: every change would have meant checking five versions and owning the translation reviews and language-specific exceptions. The old process kept shipping.

No team had made an obviously bad decision. But in 2025, a quarterly regulatory deliverable was still running on a personal workbook. I liked building it: the language automation, the date logic, the bookmark macro, and the new-investment tables. I also liked updating old pieces after learning a new trick, then making them lazier. Running the same reports on cycle 18 as on cycle 2 stayed manual because the review sequence had not changed.

I never found a way around the sequence of translations and reviews. I saved time before it began by automating as much of the report as I could, reducing late accounting changes, and adapting the investment notifications prepared at closing instead of writing new per-deal commentary from scratch. If I had to build it again, I would start by automating the report and making the inputs upstream more reliable.