Migration

Already paying for AI
you cannot audit?

Most companies we onboard are not starting from zero. They have a seat-based contract, a shadow deployment nobody sanctioned, and no way to show a regulator what happened. Here is how the move works.

No data migration neededRun in parallel firstExit clause in the contract
Where you are now

Three starting points, one destination

From ChatGPT Enterprise

You have a good model behind one interface, and a per-seat bill that grows with headcount rather than usage. What you do not have is a named agent per person, tier-enforced routing, or an export your DPO can read. We keep the model — it is one of ours too — and put a gateway and a ledger in front of it.

From Microsoft Copilot

Deep in Office, shallow everywhere else, and routed wherever Microsoft decides. Teams stays as your chat surface. What changes is that your CRM, ad accounts and Nordic finance tools become readable, and Tier 3 work stops leaving your jurisdiction.

From a US SaaS AI vendor

Usually the hardest conversation, because the tool works. The problem is the paperwork: sub-processors you cannot enumerate, logs you cannot export, and a DPA written for a different continent. We run alongside it until the evidence gap is obvious.

The plan

Three steps, nothing switched off

You do not cut over. You run in parallel, compare, then let the old contract lapse on its own terms.

01

Inventory and parallel run

We map what AI is actually in use, including the personal subscriptions. Then we stand up your workspace and put agents next to the incumbent for the same work. Nobody loses a tool. Two weeks is usually enough to see the difference in output and in evidence.

02

Move the sensitive work first

Counter-intuitive, but correct. The regulated workflows are where the incumbent is weakest and where tier routing pays for itself immediately. Once Tier 3 is provably inside European jurisdiction, the rest is a preference question rather than a risk one.

03

Consolidate and let the old contract expire

Personal subscriptions get cancelled because the sanctioned tool is better, not because IT sent an email. When the incumbent renewal comes up, you have a full ledger of what the alternative did instead of a hunch.

Honestly

What transfers, and what does not

ThingTransfers?Detail
Your filesNothing to moveAgents read in place from Drive, SharePoint, OneDrive and the rest. No copy into a separate store unless you add it to the vault deliberately.
Chat surfaceYesSlack or Teams, whichever you already use. Your admin approves one app.
Custom GPTs / Copilot agentsRebuilt, not importedThere is no honest import path. We rebuild the ones that earn it as skills, which are versioned and auditable. Most turn out to be two or three prompts.
Prompt librariesPartlyPaste them in; they become skills. Expect to keep about half — the rest were working around a limitation you no longer have.
Conversation historyNoDeliberately. Importing a history you cannot attest to would poison the ledger on day one. Old history stays where it is until you delete it.
Your incumbent contractRuns its courseWe do not ask you to break it. Parallel running is the point.
SSO configurationYesSAML against Okta or Entra ID. Usually the fastest part of the whole exercise.
And the exit works the same way

Thirty-day notice, standard-format exports on day one, exit clause in the DPA. We would rather you read it before signing than discover it later.

Bring your current
contract and we will read it