How you take full ownership of your platform.
A website is pages and copy. A platform is different. It has real users, real data, real money flowing through it, real decisions running on it. Handing one off isn't a single click — it's a transition.
This brief lays out three transition postures, the complete inventory of what transfers, a phased 60 – 90 day timeline, and the signals that tell us your team is ready. You own the client-specific project assets regardless of which posture you pick. None of them trap you.
What you're actually receiving
A platform handoff is far more than source code. Each paid-for client project asset moves under your control through the signed handoff schedule:
Codebase
The client-specific production code in a repository you own. Transferred to your GitHub org, or forked under yours, with full commit history.
Infrastructure
Hosting accounts, domain names, DNS, CDN, edge configurations — moved to your billing and your admin control where the platform permits.
Database
Every row of production data, with export rights, schema definitions, migration history, and the database account itself.
Authentication
User accounts, auth provider (Supabase/Clerk/Auth0), session tokens, role definitions — transferred with zero disruption to live users.
Payments
Stripe account ownership transfer (or equivalent). Webhook configurations, payout history, customer tokens, refund authority.
Third-party services
Email (Resend/SendGrid), analytics, monitoring, CDN, search, file storage — every account listed with owner, admin access, billing, and transfer method.
Documentation
Architecture diagrams, API contracts, deployment runbooks, incident playbooks, environment variable index, ops cheat sheet.
Secrets & credentials
All production keys, tokens, and environment variables, handed over via secure vault with one rotation window after transfer.
The principle: from day one of the engagement, accounts should be client-owned or jointly administered wherever the platform permits. If Assay temporarily holds an account or credential, it is named in the transfer inventory with a target transfer date. Handoff is a transfer of control, not a surprise property negotiation.
Your three postures
Platforms are too involved for a single-path handoff. Pick the posture that matches your team's capacity and your risk tolerance.
Phased rampdown
Recommended for live platformsWe stay on a shrinking retainer while your team takes over. Month 1 we're full-time partners; by month 6 we're on-call only. Your team learns the platform while it's still live, with us as safety net.
- Live platform stays up and healthy throughout the transition
- Your team learns the system with us beside them, not behind them
- Incident response stays at our level of quality during the handoff
- Clear exit: the retainer shrinks on a published schedule until it ends
- Longest calendar time of the three postures
- Monthly retainer cost during the ramp-down period
- Works best if your team is already building in parallel
In-house transfer
Fastest exitYour internal engineering team takes over directly. We run a four-week intensive: architecture walkthrough, paired on-call, documentation handover, and a final knowledge-transfer audit. Then we walk away.
- Cleanest, fastest path to full independence
- Your team owns the full surface area from day 45 onward
- Lowest long-run cost once the transition completes
- Requires a capable senior engineer on your side, full-time
- First incident after handoff tests the knowledge transfer
- If your team is new to the stack, rampdown is usually safer
Agency transfer
Neutral handoffYou bring in an external development partner, and we onboard them. Three-week intensive: we pair-code, walk their lead through every domain, hand over the runbook, and stay available for 30 days of email support after.
- No need to hire in-house engineers before transition
- The incoming agency can shape the platform to your new direction
- Ongoing maintenance moves to a predictable agency billing model
- Platform quality becomes dependent on the incoming agency
- Typical agency rates run $120 – $250 per hour
- Vet the incoming team before committing — we can help with that
What actually transfers, concretely
Every platform handoff moves the same eight things across the line. The order and depth changes per posture, but the list stays constant:
| Domain | What transfers | When |
|---|---|---|
| Repository | GitHub ownership transfer, branch protections, team access, CI/CD secrets | Week 1 |
| Hosting | Vercel/AWS/cloud provider account, domain, DNS, SSL certificates | Week 1 – 2 |
| Database | Production DB ownership, backup schedule, export rights, point-in-time recovery | Week 2 – 3 |
| Auth provider | Supabase Auth / Clerk / Auth0 project ownership and billing seat | Week 2 – 3 |
| Payments | Stripe account owner change, webhook endpoints, payout routing, refund auth | Week 3 – 4 |
| Third-party | Email (Resend/SendGrid), analytics, monitoring, CDN, search indexing, file storage | Week 3 – 4 |
| Documentation | Architecture doc, API reference, runbook, incident playbook, env-var index | Week 4 |
| Credentials | All production secrets rotated into your vault, old keys invalidated on our side | Final week |
Readiness checklist
Before we hand over the keys, both sides sign off on these. Any unchecked item extends the transition until it's green:
- Your team can deploy a code change to production with us watching, not helping
- Your team has responded to a synthetic incident and resolved it within the SLA window
- Every production credential has been rotated into your vault and ours has been invalidated
- All billing accounts (hosting, database, third-party) are on your credit card
- Backup and restore has been run live, end-to-end, and verified by your team
- The runbook has been read aloud in a live walkthrough with Q&A
- At least one full support ticket has been triaged and closed by your team solo
- Your team has access to every GitHub, hosting, DB, and third-party admin console
Typical timeline (Phased Rampdown posture)
Shadowing
Your team joins every standup, every deploy, every incident call. We still own production. Knowledge flows from us to you in both written and paired form.
Paired ownership
Your team starts shipping code changes with us reviewing. We still handle incidents, but you're on-call with us. First credential and account transfers begin.
Role reversal
Your team owns production. We move to code review and incident escalation only. All infrastructure accounts are now on your billing.
Ramp-down retainer
Hours shrink each month on a published schedule. By month 6 we are at "on-call only" rate — emergency response, no proactive work.
Transition closed
Retainer ends. Relationship optionally shifts to a break-glass rate. Your team owns every domain on the checklist. Final credential rotation confirms clean separation.
Our recommendation
Phased rampdown for any platform that is already live with real users.
The risk in a platform handoff isn't the paperwork — it's the first 3 a.m. incident after the new team takes over. Phased rampdown puts your team through real production conditions with us alongside them, so the first solo incident they handle is the tenth one they've seen, not the first. Every live platform we've handed off has used this posture. It costs more than a clean cut, and it's worth every dollar.
Pick one of the faster postures when: (a) the platform is pre-launch with no live users yet, (b) your team has already been building alongside us for months, or (c) you've budgeted a tight runway and need the transition done in weeks, not months. We'll flag which posture fits your specific situation during the transition kickoff call.
Next step
When you're ready to start the transition, we schedule a kickoff call where both teams align on posture, readiness gaps, and timeline. Within a week of that call, we deliver a written transition plan with named owners on every line item and a target handoff date.
If you want us to stay on after the transition closes, we offer four flavors of ongoing partnership — see our retainer brief for the shapes that fit.