Data Portability
Most apps start cold. Users arrive without context, preferences, or history, thus forcing builders to start from zero or ask users to manually export their data.
Data Portability changes this. It enables builders to access user data from any source through a single embeddable integration. With cryptographic consent and no manual exports, apps can deliver personalized experiences from the first session.
Built on Vana, Data Portability handles extraction, storage, and permissions, so builders can focus on products that understand users from day one.
What It Enables
- First-session personalization: Access user data instantly. No cold starts, no lengthy onboarding, no manual exports
- Single integration, any source: One SDK connects to Spotify, Instagram, and more without building bespoke integrations
- Cryptographic consent: Users sign permissions with their wallet, creating verifiable proof of consent on-chain
- User sovereignty: Users control what data is shared, with whom, and can revoke access anytime
What Builders Don't Have to Worry About
| Challenge | Vana handles it |
|---|---|
| Building connectors for each source | Single SDK, multiple sources |
| User authentication flows | Hosted login inside Vana Connect |
| Data storage & compliance | Data lives in user's vault, not builder's servers |
| Permission management | Grants system with built-in revocation |
| Schema normalization | Defined TypeScript interfaces per scope |
| Consent verification | Cryptographic grants with on-chain anchoring |
Key Terms
| Term | Definition |
|---|---|
| Vana Connect | Embeddable modal that handles source selection, consent, and login |
| Ingestion Engine | Server-side data extraction, no browser extensions or user installs needed |
| Data Vault | Per-user storage with versioned snapshots of connected data sources |
| Grants | Wallet-signed permissions providing tamper-proof, cryptographically verifiable consent |
| Scopes | OAuth-style permission types that define what data a builder can access (e.g., instagram.profile_info) |
A detailed breakdown of each component can be found in the Technical Components section.
How It Works
- Builder triggers Vana Connect: Embed the modal in your app to initiate data connection
- User connects source: User sees what data will be shared and logs into their source (e.g., Instagram, Spotify)
- Vana extracts data: Ingestion Engine retrieves the requested data server-side; user signs consent with their wallet
- Builder receives structured data: Data delivered via webhook, ready for personalization
Security Model
Data portability uses a user-controlled trust model:
- Raw data is stored in the user's personal Data Vault, not on builder servers
- Builders receive only the specific data scopes they request and users approve
- Grants are anchored to Vana L1, creating tamper-proof consent records
- Users can revoke grants, immediately cutting off builder access
Updated 12 days ago
