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

ChallengeVana handles it
Building connectors for each sourceSingle SDK, multiple sources
User authentication flowsHosted login inside Vana Connect
Data storage & complianceData lives in user's vault, not builder's servers
Permission managementGrants system with built-in revocation
Schema normalizationDefined TypeScript interfaces per scope
Consent verificationCryptographic grants with on-chain anchoring

Key Terms

TermDefinition
Vana ConnectEmbeddable modal that handles source selection, consent, and login
Ingestion EngineServer-side data extraction, no browser extensions or user installs needed
Data VaultPer-user storage with versioned snapshots of connected data sources
GrantsWallet-signed permissions providing tamper-proof, cryptographically verifiable consent
ScopesOAuth-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

  1. Builder triggers Vana Connect: Embed the modal in your app to initiate data connection
  2. User connects source: User sees what data will be shared and logs into their source (e.g., Instagram, Spotify)
  3. Vana extracts data: Ingestion Engine retrieves the requested data server-side; user signs consent with their wallet
  4. 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