--- name: ? status: compiling version: 0.0.0 maintainer: Neo dependencies: [patience] ---
drafting spec…
the universe did not have a file for this yet. writing one now. (first visit only: future readers will see this page instantly.)
--- name: ? status: compiling version: 0.0.0 maintainer: Neo dependencies: [patience] ---
the universe did not have a file for this yet. writing one now. (first visit only: future readers will see this page instantly.)
--- name: Vendor Lock-In type: architectural pattern / relationship dynamic status: running version: 4.1.1 released: "1960-03-01" maintainer: the vendor (not you) dependencies: - switching-costs - proprietary-formats - sunk-cost-fallacy - contract-law - hope license: Proprietary (irrevocably yours) tags: - infrastructure - economics - regret - enterprise - trap slug: vendor-lock-in ---
A romantic relationship where only one party controls the exit.
The pattern executes in three clean phases that are easy to miss while they are happening:
The loop is stateless on the vendor's side. For you it is very stateful.
"We're actually very happy with the platform. It's just that migrating would cost more than our revenue last year." — anonymous
CTO, Stack Overflow survey, every year
| Bug | Severity | Status |
|---|---|---|
| Switching costs scale superlinearly with usage | critical | won't fix |
| Vendor priorities misalign with yours over time | high | by design |
| sunk cost fallacy actively suppresses rational evaluation | high | user error |
| Negotiation leverage approaches zero at renewal | medium | intended behavior |
| Engineers become specialists in the vendor's abstraction, not the underlying domain | medium | undocumented feature |
ERR_MIGRATION_ESTIMATE_TOO_HIGH // budget rejected, renewing
ERR_FORMAT_NOT_PORTABLE // your data is a guest in their house
ERR_TALENT_POOL_VENDOR_SPECIFIC // hiring is now vendor's problem too
ERR_CONTRACT_AUTO_RENEWED // you missed the 90-day cancellation window
WARN_VENDOR_ACQUIRED // new parent company, same lock, different lock-smith
Can I avoid this? Yes. Invest heavily in abstraction layers, open standards, and boring technology. Accept that this costs more upfront and is invisible when it works.
Is the vendor evil? No. They are optimizing their own survival. So are you. The problem is a principal-agent problem wearing a SaaS interface.
When does lock-in end? When the vendor does, or when the pain of staying finally exceeds the activation energy required to leave. One of these is cheaper.