How I Built A Reference Data App To Streamline Data Governance
Table of Contents

In almost every organization I work with, managing reference data creates a deceptively common problem: teams using different names for the same data.
Each team manages their own version of territories, regions, or product hierarchies. Usually this happens in spreadsheets, with no governance or connection back to the warehouse. When that data doesn’t align, neither do the reports, forecasts, or decisions that rely on it.
Managing reference data creates a deceptively common problem: teams using different names for the same data.
That’s where Sigma comes in. The Reference Data Management app we built is a clear example of how you can give teams a structured, scalable way to manage shared definitions across any business.
The MVP mindset: Start small, win big
I built this app with a “crawl, walk, run” approach. It’s easy to jump in wanting to build something complex and polished right away. Instead, start simple. What’s the most basic version of this that still gets the job done?
For me, that’s often mimicking what’s happening in Excel today. A familiar spreadsheet interface where someone can add and edit reference data directly. For example, mapping a sales territory to the right rep is as easy as typing into a cell. From there, I layer on features to make it usable at scale. Instead of raw grids and free text entry, I add data validation checks and modals with forms to facilitate cleaner data capture. Things like this ensure you don’t end up with inputs like United States, US, and 'Merica all referring to the same region.
Things like this ensure you don’t end up with inputs like United States, US, and 'Merica all referring to the same region.
In the “run” phase, I focus on governance and polish. I add in approval workflows that trigger notifications, additional data quality checks, and row-level security to ensure only the right information gets distributed across the org.
The freedom to define, refine, repeat
Two Sigma features are essential: input tables and actions.
Input tables let me write back to the warehouse in real time. I’m not just helping users analyze what already happens, I’m capturing what is happening right now and feeding that into downstream workflows. Actions, on the other hand, allow me to define that workflow to build an effective user experience. I configure exactly what happens when someone clicks a button, whether that’s opening a modal, triggering a calculation, or sending a request to a manager for review.
I’m not just helping users analyze what already happens, I’m capturing what is happening right now and feeding that into downstream workflows.
Approvals add governance as changes don’t overwrite the source of truth until a manager reviews and signs off. Conditional notifications over email, Teams, or Slack ensure people only see what matters. And every change is logged: who submits it, who approves it, when, and why.
Behind the scenes, Sigma writes updates safely to a dedicated schema, keeping source data untouched and trustworthy. You can then decide if and when to merge them back: unioning new products, coalescing approved changes, or tying updates into your ETL pipelines.
Intentionally unopinionated: a challenge and an opportunity
That flexibility also surfaces one of the challenges of this build. Sigma is intentionally unopinionated. It doesn’t assume what you want a button or a form to do—you have to define it. So, while you have full control, it also means there’s a bit more to learn up front. But once you understand how the building blocks fit together, you’re no longer bound by the limits of point SaaS solutions or the fragility of Excel. You’re free to build something that actually fits your business.
Once you understand how the building blocks fit together, you’re no longer bound by the limits of point SaaS solutions or the fragility of Excel.
That freedom makes it easier to evolve the app over time, especially through collaboration and feedback. The version of this app I show customers today looks nothing like the first one I built. I started with a simple idea based on something a customer mentioned—I built a quick version and then shared it with members of my Solutions team and demoed it to customers. Everyone brings a different lens, and every “what if” or “we do it like this” makes the app a little better.
That’s the beauty of building in Sigma. You’re never locked into your first version. You’re learning, iterating, responding in real time.
That feeling when a client says "we need that"
The payoff is clear. Customers consistently respond with: “We need that.”—sometimes adding “Exactly that!” Thanks to org-to-org sharing, I hand off the app, swap in their data, and they’re live. In many cases, it’s already doing more than they expect before customization even begins.
Sigma makes the warehouse both the system of insight and the system of action, giving business users the power to build real applications, not just reports.
Looking past the specifics of reference data management, this app has become one of the clearest ways to show what’s possible with data apps. Time and time again, this is the catalyst that gets teams thinking beyond traditional analytics and reporting. Yes, we can deliver pretty dashboards, but that’s table stakes. The bigger message is that Sigma makes the warehouse both the system of insight and the system of action, giving business users the power to build real applications, not just reports.
Just start building
My advice to anyone building their first data app in Sigma is again, start simple. Focus on learning the foundational pieces, then build the most basic version of what you think is necessary. Once you get a handle on how things work together, your imagination is the only limitation. Put yourself in the shoes of your users. Think about the UX of the apps you use everyday. Some are great, others aren’t. Copy the good, improve the bad.
Every time a customer says, “I wish I could do this,” it’s not a dead end, it’s an opportunity to build.
That’s why I love this space. Every time a customer says, “I wish I could do this,” it’s not a dead end, it’s an opportunity to build. And with Sigma, those ideas are actually within reach. Think about the power of a simple if statement: with just that one building block, you can shape logic in endless ways. A CRUD application works the same way: basic on the surface, but once you have it, the possibilities compound fast. With enough of the right building blocks, there’s no end to what you can create.