Table of Content
Subscribe to our Newsletter
Get the latest from our team delivered to your inbox
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Ready to get started?
Try It Free
Every regulatory reporting cycle asks the same question in a different format: where did this number come from, and can you prove it. FR 2052a liquidity reporting, FR Y-14 and CCAR submissions, NAIC ORSA filings, and the dozens of other recurring reports a bank or insurer files all pull from the same underlying systems, quarter after quarter. Yet most reporting teams rebuild the data trail from scratch every cycle, because nothing links a reported figure back to the system, transformation, and code that produced it. That rebuild work, not the regulation itself, is what makes reporting slow. Analysts spend the bulk of a reporting cycle reconciling spreadsheets and chasing down why a number moved, instead of analyzing what it means. When a value gets restated late in the cycle, the team has no map of what else it touches, so the fix becomes a scramble instead of a lookup. Deterministic, code derived lineage removes the rebuild step. It gives every reported value a traceable path back to its source, available on demand instead of reconstructed under deadline.
Recurring regulatory reports do not change much from cycle to cycle. The fields FR 2052a liquidity reporting asks for this quarter are close to what it asked for last quarter. FR Y-14 schedules and CCAR and BCBS 239 reporting requirements follow a fixed template year over year. NAIC ORSA filings expect the same risk and capital narrative restated with updated numbers. What changes is the underlying data: new transactions, corrected entries, updated models. Without a persistent record of where each field in the report comes from, a reporting team has to re derive that mapping every cycle, often by asking the same engineers the same questions about the same tables. That is reconciliation work dressed up as reporting work.
The real cost shows up when a number has to be defended, not just produced. An examiner asks why a loss figure changed between filings. A model risk review asks which upstream fields feed a capital calculation. A late correction surfaces in a source system after a report has already gone out. In each case, someone has to manually trace a value back through ETL jobs, spreadsheets, and application code that was never built to be traced, then manually work out what else depends on it. Teams without that path documented in advance spend days reconstructing what should be a lookup. Foundational analyzes the actual source code behind these systems, the transformation logic itself rather than only the warehouse tables a report lands in, which is what turns that reconstruction into a lookup.
Data lineage is the documented record of how a piece of data moves from its origin to its final reported form, including every transformation it passes through along the way. Deterministic lineage extends that record so it is complete and code derived rather than inferred from query logs or written down after the fact, so the path behind any reported number can be verified on request instead of reconstructed under deadline.
| Reporting task | Manual approach | With deterministic lineage |
|---|---|---|
| Tracing a reported figure to its source | Ask the engineers who built the pipeline, if they still work there | Look up the recorded path from source to report |
| Responding to an examiner's data question | Reconstruct the mapping under deadline | Pull the existing lineage record |
| Assessing the impact of a late correction | Manually check every downstream report that might be affected | Query what the corrected field feeds, automatically |
Lemonade's experience illustrates the stakes of this gap from the other side. When the company needed to support AI driven underwriting with regulators, complete, code derived lineage is what significantly accelerated its regulatory approval, because its compliance team could show exactly how its models used and derived their data rather than describe the process in a narrative review. The same principle applies to recurring reporting: a reviewable lineage record turns an open ended audit conversation into a specific, answerable one, and it shrinks the blast radius of a late correction from every downstream report to the specific ones that actually depend on the corrected field.
A reporting program with lineage in place does not make regulatory complexity disappear, it removes the manual rebuild underneath it. Foundational analyzes source code across the systems that feed a report, including application layers, transformation scripts, and established systems that predate the current reporting stack, not just the warehouse tables the report ultimately lands in. That produces a lineage record that updates automatically as the underlying code changes, instead of going stale the moment someone ships a pipeline update. The same record that speeds up this quarter's FR 2052a or ORSA filing is also what lets an organization show, with evidence, that the data feeding any AI system built on top of its reporting stack can be traced and governed rather than assumed trustworthy.
Why does regulatory reporting take so long if the regulation has not changed?
Because the data each report depends on is rarely in a stable, mapped state. Reporting teams spend most of a cycle rebuilding the connection between a reported figure and the system that produced it, work that has to repeat every cycle unless that mapping is recorded somewhere persistent. Deterministic lineage records that mapping once, automatically, as code changes, so each new cycle starts from a known state instead of a blank one.
Does data lineage replace a reporting team's existing process?
No. It replaces the manual tracing work underneath that process. A reporting team still owns the submission, the narrative, and the regulatory judgment calls involved in filing. Lineage gives that team a verified record of where each number came from, so less of the cycle goes to reconciliation and more goes to actual review of what the numbers mean.
What happens when a source system changes after a report has already been filed?
Without lineage, teams typically learn about the dependency only once something breaks downstream, often in the next cycle. With deterministic, code derived lineage, the system that changed and every report, model, or field it feeds is already mapped, so the impact of the change can be assessed in minutes rather than discovered weeks later during the next filing.
Does this apply outside of banking reports like CCAR and FR 2052a?
Yes. NAIC ORSA filings, insurance reserving reports, and other recurring regulatory submissions run into the same underlying problem: the same data gets reported on a cycle, and nothing documents how it got there between cycles. The fix is the same regardless of which regulation triggers the filing.
Manual reporting cycles are not slow because the regulations are complicated, they are slow because nobody recorded how the data got there last time. Foundational builds that record directly from source code, across the systems a reporting stack actually depends on, so each cycle starts from a mapped state instead of a blank one. See how this plays out for banking-specific filings in our breakdown of CCAR and BCBS 239 reporting requirements, or talk to our team about mapping lineage across your own reporting stack.
Talk to our team about mapping deterministic lineage across the systems your regulatory reports depend on.
Talk to our team about mapping deterministic lineage across the systems your regulatory reports depend on.
Talk to our team about mapping deterministic lineage across the systems your regulatory reports depend on.