Looker, Superset, Tableau or Mode: the tool is not the hard part, adoption is. I have led BI migrations at fintechs and scale-ups, including one of the largest Looker to Lightdash moves in Europe. I resell no platform, so the tool call is made on merit, not commission. Migrations fail at adoption, not architecture. I handle both.
Aggregated across consulting engagements at fintechs and scale-ups. Happy to walk through the detail on a call.
The technical move is the easy part. These four problems are what actually kill it. I have heard every one of these sentences in real life.
"Which of these 600 dashboards do people actually use? Honestly? No idea."
Without a proper diagnosis you migrate everything, and six months later you have the same mess in a nicer tool. The diagnosis is where the migration is won or lost.
"The chart worked in the old tool. In the new one it just... returns nothing."
Source and target are never the same language. Missing joins, fanouts, dimensions that never existed in dbt. Someone has to fix these at the model layer, and that someone is usually a very annoyed engineer.
"I watched the training video. I still build my charts where I always did."
A one-hour webinar and a wiki page is not change management. If analysts are not confident in the new tool within their first session, they will find a way around it. Usually Excel.
"Who owns this dashboard?" "The person who left in March."
A migration is the one chance to give every dashboard a named owner and a lifecycle. Skip it and the new estate becomes a graveyard, just like the old one.
What the research actually says
This is not just my opinion from the field. The industry numbers say the same thing: buying, or re-buying, a BI platform does very little on its own. The value shows up only if people actually use it, and most of the time they do not.
~29%
of employees actually use the BI tools their employer pays for. Adoption has sat around the 25–30% mark for roughly seven years, barely moving.
Source: BARC / Gartner adoption research80%+
of data-migration projects run over time or over budget, with cost overruns averaging around 30%. A new tool does not fix a problem the old tool did not cause.
Source: industry migration-cost benchmarks16%
of organisations reach full dashboard adoption on a leading BI platform. Most of the estate is built, paid for, and then quietly ignored.
Source: Gartner, BI & analytics adoption surveyOne honest note on the numbers
You will see “60–70% of dashboards go unused, per Gartner” quoted everywhere. I have looked: it does not trace to any Gartner publication, it traces back to a social-media post. The real, defensible figure is the adoption ceiling above, and it is bad enough on its own. I would rather give you a number you can check than one that sounds good in a pitch deck.
Seven areas of work, run by a written operating system. The mix and depth depend on your estate; the diagnosis establishes both.
Whatever the source tool, a migration runs on a written operating system, not my memory: ten phases, one repeatable core, rules that do not change. Your team inherits the machine, not just the outcome.
One authoritative tracker: every asset, owner, usage number.
KEEP / HOLD / DELETE with named owners. Effort follows value.
A converter owns the bulk. Humans own the exceptions.
Fixed weekly cadence. Predictability over speed.
Diagnose, fix at the model layer, PR, merge. The core unit.
One front door, and a FAQ to docs to skills flywheel.
Train-the-trainer, until tribes fix their own dashboards.
Phased off-boarding, redirects, account deactivation.
Lifecycle states and ownership, so it stays healthy.
The machine keeps running after I leave.
Every broken migrated dashboard goes through the same loop: diagnose against the source, fix at the model layer, PR, merge, confirm with the reporter. Master this loop and most of the job is muscle memory. A few real rows from the diagnosis tree:
| Symptom | Fix layer |
|---|---|
| "Unknown field id" after the move | Model layer: rename or re-add, or repoint the chart |
| Inflated or duplicated numbers | Model layer: fix the join grain |
| Chart empty, a field is missing | Model layer: add the join |
| Filters or chart type look off | Target UI or an AI fix-skill, no PR needed |
The migration is run as a set of position contracts, so it can be handed off one contract at a time and pointed at any tool. Early on one person may hold several positions; the contracts stay separate on purpose.
The DRI owns the machine, not the charts: timeline, cadence, comms, cutover. Tribe ambassadors own their own dashboards. The vendor gets one channel, not twenty voices.
If the same question is answered twice, it becomes documentation. If the same fix happens three times, it becomes a skill or a script. You are not paid to answer the same question twice; you are paid to make the second answer unnecessary.
Never paper over a model-layer bug in the UI. And never invent business logic: if a field was commented out and nobody knows why, the owner decides. I do not guess.
A tool's "no changes" signal is not proof of no changes. Bulk re-migrations over live dashboards need a real diff and an owner heads-up. Learnt the hard way at Wise, encoded forever.
If in week ten I am still fixing charts myself, the enablement has failed. Fix the system, not the chart. The point is a machine that runs without me.
Converter error count
Support questions per released dashboard
Fixes done at tribe layer, not central
I build AI tooling into the migration itself: a dashboard finder, redirect logic, and Claude Code skills your analysts run themselves to fix broken charts. The mechanical work gets faster, which leaves time for the part machines cannot do: getting hundreds of people to trust a new tool.
The training covers this too. Your analysts leave knowing how to work with AI agents on real analytics problems, not just how to click around the new tool.
Dashboard finder, redirect logic, a live migration status site, custom Claude Code skills. All built for your estate.
Beginner to power-user documentation, ambassador toolkit, governance runbooks. Lives in your Confluence, not mine.
Hands-on sessions built for speed. Analysts go from zero to shipping their first chart in about 90 minutes.
Without a lifecycle, a migrated estate turns back into a graveyard within months. I design the governance layer before I leave, so it doesn't.
Work in progress. Not yet ready for business users.
Reviewed, owned, and trusted. The badge that matters.
Hasn't been touched in a while. Needs review before use.
No longer active. Out of the way, not deleted.
Every dashboard enters a lifecycle and gets a named owner, with a resolution chain for when that owner leaves. Stage transitions run through the target tool's API where possible. Your team inherits a living estate, not a snapshot from migration day.
Free to use
Most migration quotes start with a guess at how much is in there. These read the files and tell you. They run in your browser, so nothing is uploaded and you do not need a connection to anything.
No two estates are the same, so every migration starts with the diagnosis: two weeks to understand your estate and what a successful migration looks like for you. Everything else follows.
30-minute call, no obligation. If it isn't the right fit, I'll say so.
The diagnosis is fixed-fee and scoped in advance. If you don't see value in the first week, we stop, and you pay half.
The diagnosis is the same fixed-fee entry for every engagement. Tool-agnostic: Looker, Superset, Tableau or Mode out; Lightdash or your target in.