Friday, October 31, 2025

How AdventHealth’s Investment Analytics Team Moved From Power BI to Sigma and From SQL Server to Snowflake

AdventHealth’s investment analytics team asked us to help them modernize how portfolio metrics are calculated, adjusted, and audited. The goal was simple to state and hard to deliver. Replace static reports and manual back‑and‑forth with a live, write‑enabled system that fits the speed of daily portfolio work. We partnered with their team to migrate reporting from Power BI to Sigma, move storage and compute from SQL Server to Snowflake with dbt for transformation, and automate a set of investment data feeds. The result is a Sigma data app that supports real‑time portfolio adjustments, vendor tracking, and an auditable workflow. AdventHealth and our founder, Jared Flores, shared this work at Sigma’s Data Apps Conference in March 2025.

The brief

The investment team needed two things at once. First, portfolio and risk metrics that update directly from the warehouse without copy‑paste or stale extracts. Second, a way to input adjustments and context at the point of analysis with a complete audit trail. This is exactly the style of solution Sigma calls a “data app,” built on live warehouse data with user input and workflow in a single place.


Platform decisions that made the difference

Why Sigma for the presentation and workflow layer

We recommended Sigma because it connects live to Snowflake, supports spreadsheet‑style building, real‑time collaboration, and most importantly, secure write‑back to the warehouse. Those capabilities let us replace static reports with a governed application that analysts can act in, not just view.

Why Snowflake for storage and compute

Snowflake provided the elasticity and security model we needed for intraday analysis and controlled write‑paths. It also pairs cleanly with dbt for versioned transformations and testing, which simplified the migration off semantic logic that previously lived inside desktop files.

Why dbt for modeling and data quality

We re‑implemented business logic as dbt models, layered into staging, core, and marts. We documented the Sigma assets as dbt exposures so lineage is visible from raw sources to every user‑facing element. That made both ownership and impact analysis concrete during and after the migration.

From Power BI to Sigma: a measured migration

Power BI content was inventoried by workspace, dataset, and report. We extracted semantic definitions, identified DAX measures that belonged in the warehouse, and converted them into SQL or dbt macros. Row‑level security policies that had lived in the BI layer were moved to Snowflake roles and reflected in Sigma. We rebuilt the front end as Sigma workbooks and then elevated the critical workflows into a Sigma data app, using live queries and input components instead of scheduled extracts. Sigma’s write‑back makes it possible to capture adjustments in governed tables that live beside the facts, not in ad‑hoc spreadsheets.

What changed for users

  • Live portfolios without the “refresh and republish” dance

  • Edits and analysis in one place, with collaboration in real time

  • Less tool sprawl, since write‑back and workflow live on the warehouse

From SQL Server to Snowflake with dbt: a durable foundation

We stood up Snowflake environments with clear role‑based access and dedicated warehouses for transformation and interactive analysis. Source tables landed in raw schemas. dbt models produced clean conformed layers for positions, transactions, benchmarks, risk factors, and vendor reference data. Tests guarded key assumptions such as one‑to‑one joins, unique keys, and valid ranges. Exposures declared every Sigma workbook and app as a downstream consumer so the team could see exactly which dbt models feed which screens.

Automated API ingestion that respects market cadence

Investment data arrives on many clocks. We built a lightweight ingestion framework that lands raw JSON into Snowflake, then normalizes it for analytics. Where push or event timing matters, Snowflake Streams capture new rows and Tasks trigger processing with low latency. This kept the pipeline simple, auditable, and cheap when idle.

The data app AdventHealth uses day to day

We worked with the investment analytics and operations stakeholders to shape a Sigma data app that mirrors how the desk actually works.

What the app does

  • Portfolio views that recalc live. Analysts can open a portfolio, pivot by strategy or sleeve, and see performance and exposures against current positions in Snowflake.

  • Adjustment forms with write‑back. Users can enter value adjustments and rationale using Sigma input components. The app writes to governed tables with user, timestamp, and before‑after values stored for audit.

  • Vendor tracking. Source‑of‑truth flags and vendor lineages are visible at the row level so users know which provider and timestamp feed each metric.

  • Audit and rollback. Because adjustments are first‑class rows in Snowflake, it is simple to diff, approve, or reverse.

Outcomes that matter to the team

  • Fewer manual corrections because adjustments happen in context and are logged centrally

  • Hours saved each week that used to be spent reconciling emailed spreadsheets

  • Higher confidence in month‑end reporting thanks to fully visible lineage and write paths

Those outcomes align with what AdventHealth and Sigma highlighted when our teams presented the solution.

What we learned

  • Put the math in the warehouse. Business logic that lives in desktop files will slow any migration. Moving it to dbt models makes every downstream tool simpler.

  • Treat the app as a product, not a report. Sigma’s live queries and write‑back let you turn a dashboard into a workflow. Design it with the day‑to‑day in mind.

  • Use Snowflake Streams and Tasks for tempo. Event‑driven schedules are a better fit for market data than fixed cron timers.

  • Document what the business actually touches. dbt exposures make Sigma assets first‑class citizens in lineage and ownership.

If you are considering a similar move

Cogs & Roses helps investment and finance teams land this full stack. Snowflake for storage and compute. dbt for modeling and quality. Sigma for analysis, workflow, and apps with write‑back. If you want your analysts working in one place with live data and real controls, we would love to compare notes.


Watch the AdventHealth session to see the data app in action.

Learn more about Sigma Data Apps and why they fit this kind of work.

Explore why teams move from Power BI to Sigma when they need live collaboration and governed write‑back on Snowflake.


Note on naming: you will see “Data Flow” on the Sigma session page. That reflects our previous brand. We now operate as Cogs & Roses. The team and the work are the same.

A publication by Cogs & Roses

Get the newsletter to your inbox