Data lineage is the map of a data element's full journey — where it originated, how it moves between systems, and where it's ultimately used. It documents the complete path and dependencies of data, making it possible to trace, verify, and trust any value back to its original source.
Data lineage is the comprehensive tracking of data usage within an organization. This includes how data originates, how it is transformed, how it is calculated, its movement between different systems, and ultimately how it is utilized in applications, reporting, analysis, and decision-making.
With the increasing complexities of business technology, data lineage analysis has become essential for most organizations. This article provides an overview of the fundamentals, importance, uses, and challenges of data lineage.
Data lineage facilitates improved data transparency, quality, and consistency by enabling organizations to track and understand the complete lifecycle of their data assets. It helps with decision-making when sourcing and using data. It also helps with transforming data, especially for larger organizations with mission-critical applications and intricate data landscapes.
There are several factors to consider with data lineage:
Data lineage plays a key role in keeping data valuable and effective in a business setting. Here are a few ways that data lineage can deliver benefits to an organization.
Data has incredible value in an information age. To realize the full value, data must be accurate and accessible. In other words, it becomes trustworthy only when it can be understood by anyone using it, and when the processing steps keep the data accurate. Data lineage provides transparency into the flow of data. It increases understanding and makes it easier for non-technical users to capture insights from existing datasets, especially for aggregated or calculated data.
Data management regulations are becoming more stringent each year. Regulatory standards are tightening, and effective data management is becoming increasingly important. Data lineage can help organizations comply with GDPR, CCPA, and other data privacy laws. The transparency of data lineage makes data access, audits, and overall accountability easier. Accurate data lineage is crucial for demonstrating compliance with regulatory requirements, thereby mitigating the risk of project delays, fines, and other penalties.
Data lineage enables stronger data governance by providing the data to monitor, manage and ensure compliance to issued standards and guidelines. Because data lineage offers traceability of origin, flow, transformation and destination, it allows businesses to improve data quality, reduce inconsistencies and errors, and strengthen data management practices.
Data lineage allows companies to trace the path of data from its current form back to its source. Data lineage offers a transparent record, facilitating the understanding and management of data variability and quality throughout its journey, and ensuring reliable data for decision-making. This is particularly relevant for companies modernizing existing systems.
With data lineage, trust in data accuracy and accessibility, improved data quality, and stronger ability to govern data all triangulate for better collaboration across teams. Data lineage avoids data siloing and facilitates interdepartmental activity. When data engineers and analysts utilize the same set of data, it fosters cross-functional teamwork and minimizes errors due to bad or in consistent data. Data lineage encourages a sense of unification as team members across an organization work from the same, trusted data.
There are multiple ways that data lineage can add business value to organizations.
Zengines has invested in data lineage capabilities to support end-to-end migration of data from existing source systems to new target business systems. Data lineage is often the first research step required to ensure an efficient and accurate data migration.
Data lineage exposes data quality issues by providing a clear view of the data journey, highlighting areas where inconsistencies or errors may have occurred. This makes it easier to engage in effective, detailed data analytics.
Consider, for instance, a financial services company with decades-old COBOL programs. Data lineage provides insights for organizations trying to replicate reporting or other outputs from these aging programs.
Data lineage makes it easier to identify and trace errors back to their source. Finding the root cause of an error quickly is extremely valuable in a world where time is at a premium.
An important aspect of data security and privacy compliance is keeping data safe guarded at all times. Data lineage provides an understanding of the data life cycle that can show information security groups the steps that must be reviewed and secured.
Comprehensive data lineage makes it easier to demonstrate compliance with data privacy regulations. For example, Banks and Payments Processors are subject to GLBA (Gramm-Leach-Bliley Act), PCI DSS(Payment Card Initiative - Data Security Standards), EU GDPR (European General Data Protection Regulation), and many other regulations that protect Personally Identifiable Information (PII). The knowledge of how any data element is used allows it to be protected, masked, or hidden when appropriate.
Data Mesh and Data Fabric are advanced data architectures that help to decentralize data and integrate it across diverse data sources. Understanding the data lineage allows data management teams to make trustworthy data available to Data Mesh / Data Fabric consumers. Data lineage makes it possible to determine the correct data to store and use for a given purpose (decision making, analytics, reporting, etc.). Data lineage is typically part of any new Data Mesh / Data Fabric initiative.
Data lineage is useful but can also face challenges. Here are a few potential issues.
Siloed data continues to be a major hurdle for tracing business data across departments and organizations. Consider when a security trade is being made. The security details are usually maintained in a reference data / Master Data Management application. The bid / ask information comes from many different market vendors and is updated continuously. The trading application computes the value of the trade, and any tax impact is computed in an investment accounting application. Is the same data being used across them all? Do they use different terminology? Do the applications all use the same pricing information? For accurate reporting and good decision making, it is vital that the same data is used in every step.
Mapping data lineage in increasingly complex environments is also a concern. Things like on-site and cloud storage, as well as remote, hybrid, and in-person work environments, make data complexity and fragmentation a growing issue that requires attention.
Historically, capturing and maintaining data lineage has been resource-intensive work performed by analysts with a deep understanding of the business. Given the quantity of data and code involved, a manual approach is prohibitively expensive for most companies. Most software solutions provide a partial view, only showing data stored in relational databases or excluding logic found in computer programs.
The best option is to find a balance between manual and automated solutions that enable cost-effective data lineage frameworks.
Data lineage is more than a backward-looking activity. Organizations also need to maintain up-to-date lineage information as systems are changed and replaced over time. In an era of constant change, data lineage teams are challenged to incorporate new forms of data usage or data transformation.
Data lineage is becoming a critical part of any company’s data management strategy. In an information age where data and analytics are king, data lineage enables companies to maintain clean, transparent, traceable datasets. This empowers data-driven decision-making and encourages cross-collaborative efforts.
Data lineage addresses a central part of business operations. It provides a powerful sense of digital clarity as organizations navigate increasingly complex tools, systems, and regulatory landscapes.
Forward-thinking technical and non-technical leaders alike should be encouraging their organizations to improve their data lineage strategies. Investments in data lineage result in a valuable new data assets that provide greater business agility and competitive advantage.
Data lineage isn’t just a nice-to-have—it’s essential for modern businesses navigating system changes, compliance pressures, and complex tech stacks. Whether you're migrating from legacy systems, improving analytics, or strengthening data governance, data lineage empowers teams to move faster, reduce risk, and make better decisions.
At Zengines, we’ve built our data lineage capabilities to do more than just document data flow. Our lineage engine integrates deeply with legacy codebases, like mainframe COBOL modules, and modern environments alike—giving you full visibility into how data is transformed, used, and governed across your systems. With AI-powered analysis, automation, and an intuitive interface, Zengines transforms lineage from a bottleneck into a business advantage.
Ready to see what intelligent data lineage can do for your organization?
What is data lineage?
Data lineage is the map of a data element's full journey — where it originated, how it moves between systems, and where it's ultimately used. It documents the complete path and dependencies of data, making it possible to trace, verify, and trust any value back to its original source.
What is an example of data lineage?
A bank's interest calculation is a classic example: lineage shows the account balance was read from one table, the rate applied from another, adjusted by logic in a specific code module, and written to the statement. Each step and dependency is traced end to end.
Why is data lineage important?
Data lineage makes data trustworthy. It lets teams prove where a number came from, meet regulatory requirements like BCBS-239, safely change or migrate systems without breaking downstream logic, and prepare data for AI — since AI is only as reliable as the data feeding it.
What is the difference between data lineage and data provenance?
Provenance is the origin and history of data — where it came from. Lineage is broader: it traces the full path data takes across systems, including every step, calculation, and dependency along the way. Provenance answers "where did this start?"; lineage answers "what's the whole journey?"
How does data lineage work for mainframe and legacy systems?
In legacy environments, lineage usually isn't documented anywhere — it's buried in COBOL, RPG, and JCL written decades ago. Zengines' Contextual Data Lineage parses that code directly to reconstruct how data flows, what each calculation does, and which modules depend on each other.

In this episode of the Finovate Podcast, host Greg Palmer sits down with Caitlyn Truong, CEO and Co-founder of Zengines, fresh off the company's Best of Show win at FinovateSpring 2026.
Caitlyn traces her path from hardware and software engineering in telecom to financial services consulting, where she and her co-founders kept running into the same gap: critical business logic locked inside legacy core applications written in COBOL, RPG, and PL/1. With 92 of the top 100 banks running COBOL mainframe cores and over half of credit unions and regional banks operating on RPG cores, that black box isn't an edge case — it's the industry norm.

There is a rule that has been on the books for over a decade, and almost nobody outside of risk and compliance teams has ever heard of it: BCBS 239. It is not a catchy name. But the idea behind it is one of the more sensible things to come out of the post-2008 regulatory response: banks should be able to explain where their risk numbers come from.
Not approximate. Not eventually. Be able to trace a number back to its source, on demand, and show the path it took to get there.
That standard came into force for the world’s largest banks in January 2016. Almost ten years later, only a handful of the 31 global systemically important banks (G-SIBs) have reported full compliance. The ECB’s RDARR Guide, published in May 2024, named data lineage as one of seven priority areas still holding institutions back, and said it expects remediation work to continue through 2027.
I want to make the case that this isn’t a story about banks dragging their feet, or regulators failing to enforce something. It’s a story about a rule that was right, running into a technical wall that was real.
If you’ve spent time around a bank’s core systems, you already know what the wall looks like. Decades of COBOL or RPG, written and rewritten by people who retired years ago, running calculations that nobody currently on staff can fully explain. Ask a team to trace how a specific risk figure was derived, and the honest answer is often: we’d need a few months, and a few of our most senior mainframe engineers — who are also the people we can least afford to pull onto this.
That’s not a compliance excuse. It’s a real description of how these systems work. Logic gets buried inside modules that branch into other modules, which branch into more, written in a language most engineering schools stopped teaching in the 1990s.
So banks have been stuck between a standard they understand and largely agree with, and infrastructure that makes meeting it genuinely hard. Regulators have been patient about this — I think correctly — because the alternative, demanding visibility into systems that were close to a black box, wasn’t realistic.
I run a company called Zengines. We built technology specifically to deal with this wall: parsing legacy code at scale, tracing how data moves through mainframes and AS/400 applications, and surfacing the business logic that’s been buried inside them for decades — with the context needed to make it usable.
At one Fortune 100 financial institution, we’re currently working through hundreds of thousands of COBOL modules, some of them tens of thousands of lines deep, netting out to tens of millions of lines of code. Questions that used to take a mainframe specialist months to answer — tracing a variable by hand through branch after branch — can now be answered in seconds. An analyst can ask the system directly where a number came from, instead of opening a ticket and waiting. That same self-service access lets teams build their own understanding, and answer questions from regulators and transformation programs directly.
I’m not suggesting this solves everything BCBS 239 asks for. Governance, and the behavioral discipline of actually using data management tools once you have them — those still take sustained organizational effort, and always will.
But the specific claim that legacy mainframes are too opaque to document fully? That claim is no longer true, at least not in the way it used to be.
I’d guess most people reading this don’t work in regulatory compliance.
If you’re a CDO, a CIO, or a risk leader at a bank with a mainframe at its core, BCBS 239 is probably one item on a long list. But the underlying question — can we actually explain how our own systems work? — isn’t a regulatory question. It’s a basic operational one. It’s the same question that determines whether you can trust the data going into a new AI initiative, whether you can defend a number in front of your own board, and whether the next system migration breaks something nobody saw coming.
Lineage has quietly become a prerequisite for almost everything banks are now trying to do with their data. Most executives don’t ask for it directly, because they don’t think to ask — they ask for the AI use case, or the modernization roadmap, or the faster reporting cycle, and lineage turns out to be the thing standing between them and any of it.
I don’t think this is a story that needs villains. The standard was right. The barrier was real. What’s changed is narrower, and more hopeful: the wall that made the standard so hard to meet has a way through it now.
If you’re a regulator, I’d offer this as something worth knowing: the technical excuse has less weight than it used to. If you’re an executive at a bank still living with this problem, I’d offer something more direct — this is more solvable, and more quickly, than you’ve been told.
Either way, the goal was never the regulation itself. It was being able to look at your own systems and actually understand them. That’s now a lot closer than it’s been in years.
Sincerely,
Caitlyn Truong
CEO, Zengines

At industry conferences this year, I’ve spent dozens of hours inside conversations with CEOs, CDOs, CIOs and operating executives across financial services. When I ask what’s keeping them up at night when it comes to their data, the answer is remarkably consistent: data access. They want data more accessible, faster, in more usable form, in more places, with fewer gatekeepers.
What's notable is what they don't ask for. Not trustworthiness. Not audit-ability. Not the ability to defend a number to a regulator without calling three people first. Access is the ceiling of the conversation, and honestly, that makes sense. In large financial enterprises built on decades of legacy applications, murky integrations, and pipelines that nobody fully documented, just getting the data somewhere useful is still a meaningful achievement.
The problem is that "getting the data" is already more complicated than most leaders realize. The moment data leaves its source system, decisions are being made about it. Decisions that quietly change what it means. And if you don't know those decisions were made, you don't know what you're actually looking at.
That's where lineage comes in, and why it matters even before you get to the outcomes leaders should be asking for.
Below, I’ll walk through (1) what “access” really delivers, (2) the abstraction layer hidden inside every extraction, (3) the compounding problem of “data derivatives”, (4) a concrete example – encoding and precision – where this gets expensive, and (5) what business leaders should be asking for instead.
When a business team asks for access to data, they almost always receive something that has already been processed for their consumption. Someone – usually a data engineer or database administrator – sat down with the source system and made a series of decisions:
These decisions are reasonable. Business consumers don’t want raw operational data; they want something readable without extraneous noise. But every one of those decisions encodes logic and judgment that doesn’t travel with the data. The output looks complete – and to the business user, it looks like the source of truth – but it is already an abstraction.
I find it useful to think of an extraction as a translation. Someone translated the operational reality of a data storage system into a business-readable view. Like any translation, choices were made: what to keep, what to drop, how to render concepts that don’t map cleanly across contexts. And like any translation, those choices can quietly change the meaning.
When a business leader looks at the extracted view, the assumption is usually that the data was “moved and shifted” – that is, copied with fidelity. That assumption is possible. In my experience, it is also highly doubtful. Logic gets applied at the moment of extraction, and unless someone deliberately captured and shared that logic, it is invisible by the time the data reaches a dashboard.
Here is where it gets harder.
Once an extracted data set exists, other people start using it. And why wouldn't they? There is already a data access path. The alternative - forging a new data access path - is the full corporate yellow tape headache: hunting for a charge code, filling out a technical work request that Business can’t quite decipher, watching that ticket age in a queue, and depending on legacy data SMEs who left the company in 2019. The extracted data set skips all of that. Already shaped for consumption, already lightly documented, already trusted by some peer team who vouched for it in a meeting six months ago. So the next team builds a report off it. Or creates a derivative data set for their own use case. Or both. What they don't realize is that the easy path and the right path may not be the same one.
They use it because it’s available and easier than starting from scratch – it’s already shaped for consumption, already lightly documented, already trusted by some peer team. So they build a new report off it. Or they create a derivative data set for their own use case. Or both.
That derivative is now an abstraction of an abstraction. The further you move from the originating system, the more layers of unrecorded judgment sit between the business decision and the operational event the data was supposed to describe. By the third or fourth hop, the question “where did this number come from?” can be genuinely difficult to answer – even for the team that produced the report.
Let me make this concrete with an example I keep encountering.
When data is moved between systems, engineers make practical choices about how to package it. One of those choices is how to handle numeric precision. A value originally stored at six decimal places in the source might be packaged at four, or two, depending on what the receiving system supports – or simply what the engineer is most familiar with.
In some industries, that’s fine. In financial services, insurance, and healthcare, it is often not fine. A decimal place in an interest rate, a reserve calculation, or a pricing model can represent material variance. Once precision has been silently reduced, the data is no longer the real data – it is an approximation that looks identical to a casual reviewer. The business consumer assumes they’re working with the underlying record; in reality, they’re working with a rounded version of it that was reshaped during packaging.
This is exactly the kind of change that lineage is built to surface. Without lineage, you can’t tell that anything happened. With lineage, the precision change is documented, traceable, and reviewable.
Regulatory frameworks have been ahead of business intuition on this point. BCBS-239 requires banks to demonstrate the accuracy, completeness, and timeliness of their risk data – which is impossible to defend without lineage. ORSA and Solvency II require insurers to substantiate the data flowing into solvency and capital calculations. None of these frameworks ask whether you have access to the data. They ask whether you can prove what the data is and how it got there.
For institutions operating under these regimes, lineage isn’t a nice-to-have analytics enhancement. It is the substrate that makes the rest of the data conversation defensible.
If “give me access to the data” is the wrong ask on its own, what’s the right one? In my view, business leaders should be asking three questions every time a new data set lands on their desk:
These questions don’t replace the access conversation – they extend it. Access is the entry point. Lineage is what makes access trustworthy.
The reason business teams don’t ask for lineage isn’t that lineage doesn’t matter. It’s that the absence of lineage rarely announces itself. The data looks fine. The dashboard renders. The report mostly ties out. The risk lives in the assumptions you didn’t know you were making about what the data went through to get to you.
If your business teams are only asking for access, you have a gap – and in legacy environments where decades of undocumented logic sit between the source and the report, that gap is widest. The fix is to start asking for lineage too.
Zengines Contextual Data Lineage is built for the environments where the lineage gap is widest – large financial enterprises with critical business logic locked inside COBOL, RPG, PL/1, and AS/400 code. We extract that embedded logic, make the data path visible, and give your teams the evidence trail they need to defend their numbers to auditors, regulators, and themselves.
If you’re working through a BCBS-239, ORSA, or Solvency II mandate, a planned mainframe migration, or a growing trust gap between your business teams and the data they consume, we’d like to hear about it.
.png)