Data portability is the ability to retrieve data from one system and reuse it in another without unacceptable loss, delay, cost, or manual reconstruction.
For a solopreneur, portable data supports:
- Software changes
- Business continuity
- Customer service
- Regulatory compliance
- Platform independence
- Business sales or succession
- Contractor handovers
- Disaster recovery
- Reporting and analysis
- AI and automation changes
The issue is increasingly important as more business information moves into third-party services. According to Eurostat data, 52.74% of EU enterprises used paid cloud services in 2025, up 7.42 percentage points from 2023. Among small enterprises, usage reached 49.3%.
Email, files, accounting, customer records, analytics, website content, payments, and operational knowledge may now exist primarily inside cloud applications. The business must know whether that information can still be used outside them.
What Is Data Portability?
Data portability is the practical ability to:
- Retrieve the required data.
- Understand what each value means.
- Preserve relationships between records.
- Transfer the data securely.
- Import it into another environment.
- Continue the intended business function.
A portable export should be structured, documented, complete enough for its intended use, and supported by a realistic destination.
The objective is not necessarily to reproduce every feature of the original software. It is to preserve the information and functions the business cannot afford to lose.
The Six Requirements of Portable Data
Portable business data has six essential properties.
| Requirement | Meaning |
|---|---|
| Accessible | The data can be retrieved without unreasonable delay, cost, or specialist intervention |
| Complete | All required records, fields, files, statuses, and historical periods are included |
| Structured | Software can identify individual records and fields |
| Understandable | Field definitions, units, codes, and relationships are documented |
| Verifiable | Counts, totals, checksums, or other controls can confirm integrity |
| Reusable | A credible destination can import and use the data |
A file can satisfy the first three requirements while failing the last three.
For example, an exported table containing customer IDs, status codes, and dates is technically structured. It is not operationally useful if nobody knows what the status codes mean, which time zone applies, or how the customer IDs connect to orders.
Data Portability Versus Related Concepts
Data Access
Data access means being able to view or retrieve information. Access may be limited to the provider’s interface and does not guarantee that the information can be reused elsewhere.
Data Export
Data export is the act of producing a file or data stream. It is one step in portability, not proof of portability.
Data Interoperability
Interoperability allows different systems to exchange and understand data while they are operating. Portability usually concerns moving or copying data between environments.
Data Migration
Migration is the complete process of moving data and related operations to a destination. Portability determines how much of that process can be completed accurately and efficiently.
Data Synchronization
Synchronization keeps two systems aligned over time. A synchronization tool may improve access to data but can also reproduce deletions, errors, or corruption in both systems.
Data Backup
A backup is designed to restore data after loss or damage. It may work only with the original application. A portable export is designed for reuse outside that environment.
Data Ownership
Ownership or contractual control does not automatically provide a complete, immediate, documented, or importable copy. Rights, access, format, and technical usability are separate questions.
Portability Depends on the Intended Use
There is no single definition of a complete export. Completeness depends on what the business must do with the data.
A contact export intended only to create an address book may require:
- Name
- Email address
- Telephone number
- Company
- Notes
The same contact export intended to recreate an email-marketing operation may also require:
- Consent source
- Consent date
- Consent wording
- Subscription status
- Unsubscribe date
- Suppression reason
- Tags
- Segments
- Campaign history
- Automation state
- Purchase history
- Form source
Define the destination and business use before deciding whether an export is sufficient.
What a Complete Portable Data Package Contains
The visible records are only the payload. A reliable portability package may also need context explaining how those records should be interpreted.
Primary Records
These are the principal business objects:
- Customers
- Subscribers
- Products
- Orders
- Payments
- Invoices
- Projects
- Tasks
- Documents
- Events
- Messages
- Transactions
- Website pages
- Analytics events
Stable Identifiers
Every important record should have a stable identifier that is preserved during export.
Examples include:
- Customer ID
- Order ID
- Invoice number
- Product SKU
- Transaction ID
- Document ID
- Event ID
- Canonical URL
- External reference number
Names and email addresses are poor substitutes for identifiers because they may change or appear more than once.
Relationships
Portable data should preserve connections such as:
- Customer to order
- Order to product
- Invoice to payment
- Contact to company
- Subscriber to consent event
- Page to author
- Article to category
- Project to task
- Message to conversation
- File to record
- Event to user
If relationships are lost, the destination may contain all the records while failing to reproduce the business context.
Metadata
Metadata explains the data or the circumstances in which it was created.
Relevant metadata may include:
- Creation time
- Last-modified time
- Creator
- Source
- Language
- Character encoding
- Time zone
- Currency
- Unit of measurement
- Status
- Version
- Ownership
- Permissions
- Retention category
- Deletion state
- Original filename
- File type
History and State Changes
The current value may not be enough. Some systems need:
- Previous statuses
- Audit logs
- Consent changes
- Subscription changes
- Payment attempts
- Inventory adjustments
- Document versions
- Communication history
- Assignment history
- Deleted or archived states
A customer marked “inactive” has a different meaning from a customer who unsubscribed, requested deletion, failed payment, or was manually suppressed.
Attachments and Source Files
Attachments must be included as actual files or through durable references.
Temporary download URLs are not portable if they expire after the source account is closed.
Data Dictionary
A data dictionary explains:
- Field name
- Human-readable label
- Definition
- Data type
- Allowed values
- Whether the field is required
- Unit or currency
- Default value
- Example
- Source
- Relationship to other fields
- Treatment of blank and null values
Export Manifest
A manifest describes the package as a whole.
It should record:
- Source system
- Export date and time
- Exporting account
- Export scope
- Included files and tables
- Excluded data
- Record counts
- Date range
- Time zone
- Character encoding
- Schema version
- Software version
- Known limitations
- Checksum for each file
The Library guidance recommends accompanying datasets with applicable metadata, data dictionaries, schemas, technical specifications, checksums, version information, and a manifest for aggregate packages.
Identify the Data That Must Remain Portable
Prioritize information that supports revenue, customer rights, legal records, delivery, and business continuity.
| Business function | Portable data should normally include |
|---|---|
| Website | Content, URLs, metadata, media, authors, taxonomy, redirects, structured data |
| Ecommerce | Products, variants, SKUs, inventory, customers, orders, taxes, refunds, discounts |
| Email marketing | Contacts, consent, subscription status, suppressions, tags, segments, campaigns |
| CRM | Contacts, companies, activities, notes, stages, tasks, owners, custom fields |
| Payments | Transactions, payouts, refunds, disputes, fees, subscription references |
| Accounting | Accounts, transactions, invoices, allocations, tax codes, currencies, reconciliations |
| Projects | Projects, tasks, status, assignees, dates, comments, dependencies, attachments |
| Cloud storage | Files, folders, metadata, versions, permissions, comments, ownership |
| Analytics | Event definitions, raw events, properties, identities, attribution fields, timestamps |
| Customer support | Tickets, messages, status, priority, attachments, satisfaction results |
| Automation | Triggers, actions, conditions, mappings, schedules, errors, execution history |
| AI systems | Prompts, instructions, sources, tool definitions, outputs, evaluations, settings |
Not every field deserves permanent retention. Portability should be aligned with data-minimization, privacy, contractual, and retention requirements.
Choose the Right Data Format
No format is best for every dataset. Select the format according to structure, volume, relationships, intended destination, and long-term readability.
| Format | Best use | Important limitation |
|---|---|---|
| CSV or TSV | Simple tables and spreadsheet-compatible records | Does not naturally preserve nested data, relationships, types, or multiple tables |
| JSON | Nested records, APIs, configurations, and web applications | Requires documentation or a schema to prevent ambiguous interpretation |
| XML | Structured documents, regulated exchanges, and schema-controlled data | More verbose and complex than many small datasets require |
| SQLite | Related tables in a portable single database file | The recipient must understand the database structure |
| SQL dump | Recreating a relational database | May contain database-specific syntax, extensions, users, or permissions |
| Parquet | Large analytical datasets | Less convenient for manual inspection and ordinary business software |
| XLSX | Human review, formulas, and familiar business tables | Formulas, macros, formatting, and application behavior may not transfer reliably |
| MBOX or EML | Email archives | Labels, permissions, threading, and provider-specific metadata may be lost |
| VCF or vCard | Contact information | Usually insufficient for CRM history and custom fields |
| ICS or iCalendar | Calendar events | Provider-specific conferencing, reminders, and permissions may not transfer |
| HTML or Markdown | Articles, documentation, and readable content | Application-specific layout and functionality may be omitted |
| PDF or PDF/A | Fixed records and evidence | Usually unsuitable for rebuilding structured operational data |
| SVG | Editable vector graphics | Fonts, linked assets, effects, or application-specific features may differ |
| ZIP or TAR | Packaging several files together | A container does not explain or validate the data inside it |
The CSV specification documents common CSV conventions but also notes differences between implementations. CSV exports should therefore state their delimiter, character encoding, header treatment, quoting rules, date format, and decimal convention.
For long-term usefulness, widely supported, publicly documented formats are normally preferable when they preserve full detail. A proprietary format can still be useful when it is supported by several applications and is accompanied by an open or widely readable export.
CSV Is Useful but Easily Misused
CSV works well for flat records but carries almost no semantic information.
A CSV file does not reliably communicate whether:
00125is text or a number03/04/2026means 3 April or March 41000represents euros, cents, kilograms, or units- An empty cell means unknown, not applicable, zero, or deleted
TRUEand1represent the same state- A number is an identifier or a measurement
- Timestamps use local time or UTC
- A comma or decimal point follows regional conventions
Spreadsheet software may also:
- Remove leading zeros
- Convert long identifiers into scientific notation
- Reformat dates
- Round values
- Change character encoding
- Interpret values beginning with
=,+,-, or@as formulas
Keep the untouched original export. Perform cleaning and spreadsheet review on a separate copy.
Preserve Meaning With a Data Dictionary
A data dictionary converts an export from a collection of values into an understandable dataset.
Example:
| Field | Type | Definition | Allowed values |
|---|---|---|---|
| customer_id | Text | Permanent customer identifier | Non-empty unique value |
| email_status | Text | Current marketing permission state | subscribed, unsubscribed, suppressed |
| consent_at | UTC timestamp | Time affirmative consent was recorded | ISO 8601 timestamp |
| order_total_minor | Integer | Order total in the currency’s minor unit | Zero or positive integer |
| currency | Text | ISO 4217 currency code | EUR, USD, GBP |
| deleted_at | UTC timestamp or null | Time the record was soft-deleted | ISO 8601 timestamp or null |
Document business rules as well as technical types. For example, explain whether refunds reduce order totals, whether cancelled orders remain included, and how duplicate customers are handled.
Use Stable Identifiers
Identifiers allow records to be matched and relationships to be reconstructed.
A portable identifier should be:
- Unique within its defined scope
- Stable over time
- Exportable
- Stored as text when numeric calculation is unnecessary
- Independent of a person’s name or mutable address
- Preserved in the destination as a source reference
Do not replace source identifiers during transformation. If the destination creates a new identifier, maintain a crosswalk:
| Source system | Source ID | Destination system | Destination ID |
|---|
This crosswalk supports reconciliation, troubleshooting, incremental updates, and rollback.
Preserve Dates, Time Zones, and Currencies
Date and financial errors can make a technically successful import inaccurate.
Dates and Times
Prefer an unambiguous representation such as ISO 8601:
2026-08-11T14:30:00Z
Record:
- Source time zone
- Whether daylight-saving rules were applied
- Whether a field represents an event time, processing time, or last-update time
- Precision available
- Treatment of date-only values
Currency
Store:
- Amount
- Currency code
- Tax treatment
- Exchange rate where applicable
- Whether the amount uses major or minor units
- Rounding method
Never assume every record in an account uses the account’s default currency.
Preserve Null, Blank, Zero, and Deleted States
These values are not interchangeable:
- Null: no value exists or the value is unknown
- Blank string: a value exists but contains no characters
- Zero: a known numeric value
- False: a known Boolean state
- Deleted: the record previously existed and was removed
- Not applicable: the field does not apply
- Redacted: the value was deliberately withheld
Define how the export represents each state. Otherwise, an import may reactivate deleted customers, replace unknown amounts with zero, or turn missing permissions into affirmative ones.
Exporting Data Through an API
An API can provide more complete or frequent portability than a manual download, but only if the extraction process handles the API correctly.
Check:
- Authentication method
- API version
- Available objects and fields
- Pagination
- Rate limits
- Maximum date range
- Historical retention
- Deleted records
- Archived records
- Nested objects
- File downloads
- Custom fields
- Incremental-update support
- Timestamp precision
- Ordering guarantees
- Error responses
- Retry behavior
- Schema changes
A script that retrieves only the first page of results may finish successfully while omitting most of the data.
Full and Incremental Exports
A full export retrieves the complete available dataset. An incremental export retrieves records created, updated, or deleted since a recorded checkpoint.
Incremental portability requires:
- A reliable update timestamp or change sequence
- An overlap period to catch delayed changes
- A deletion mechanism
- Deduplication
- Checkpoint storage
- Periodic full reconciliation
Do not depend indefinitely on incremental extracts without comparing them with a new full export.
Common Export Failures
Missing Record Types
The export includes contacts but excludes activities, notes, tasks, attachments, or consent history.
Hidden Filters
Only visible, active, or recently created records are exported.
Incomplete Pagination
The API extraction retrieves the default number of records but does not request later pages.
Expiring File Links
The export contains URLs to attachments rather than the files themselves.
Broken Relationships
Orders and customers are exported into different files without stable matching identifiers.
Unexplained Codes
Statuses such as 4, X2, or arch_1 are included without definitions.
Changed Data Types
Long identifiers become rounded numbers, timestamps become formatted text, or monetary values lose precision.
Missing Deletions
An incremental export includes new and updated records but does not identify records removed from the source.
Snapshot Inconsistency
Different tables are exported at different times while the source continues changing, producing mismatched totals and references.
Unrecorded Transformations
The export process cleans, merges, filters, or renames data without documenting what changed.
Destination Rejection
The source export is valid, but the destination rejects unsupported values, duplicate records, file sizes, or custom fields.
Data Portability for Websites
A portable website package should preserve more than visible page text.
Include:
- Canonical URL
- Slug
- Page type
- Title
- Meta description
- Headings
- Body content
- Publication date
- Last-modified date
- Author
- Categories and tags
- Canonical settings
- Indexing directives
- Structured data
- Internal links
- Featured image
- Image URLs
- Image alt text
- Redirects
- Attachments
- Custom fields
Keep a URL inventory before moving content. After import, compare old and new URLs and create redirects where URLs change.
A visual HTML export may not preserve editable templates, database fields, forms, search, memberships, or structured data. Evaluate content portability separately from application portability.
Data Portability for Email and CRM Data
Email and CRM data contains permissions and restrictions that must survive the move.
Preserve:
- Contact ID
- Email address
- Subscription status
- Consent source
- Consent date
- Consent wording
- Unsubscribe date
- Suppression reason
- Hard-bounce status
- Complaint status
- Tags
- Segments
- Custom fields
- Lead source
- Activity history
- Deal history
- Notes
- Tasks
- Owners
- Form source
- Purchase references
Never convert every exported contact into an active subscriber. Suppression and unsubscribe records should be transferred before active contacts are imported.
Where campaign statistics are not importable, preserve a documented archive containing campaign names, send dates, audiences, subject lines, delivery results, and conversion definitions.
Data Portability for Ecommerce and Subscriptions
An ecommerce export should preserve the relationships among customers, products, orders, payments, taxes, shipments, refunds, and discounts.
Important elements include:
- Customer and guest identifiers
- Order numbers
- Product and variant IDs
- SKUs
- Quantity
- Price at purchase
- Currency
- Tax
- Discount
- Shipping
- Refund
- Fulfillment status
- Payment status
- Order timestamps
- Billing and shipping addresses
- Subscription status
- Renewal date
- Cancellation state
Do not assume stored payment methods can be exported like ordinary customer data. Payment credentials and tokens may be subject to security rules, contractual controls, and provider-specific migration procedures.
Reconcile the destination using financial totals as well as record counts.
Data Portability for Accounting Records
Accounting portability requires more than exported invoices.
Preserve:
- Chart of accounts
- Opening balances
- Journal entries
- Transactions
- Invoice and credit-note numbers
- Customers and suppliers
- Payment allocations
- Tax codes
- Exchange rates
- Reconciliations
- Attachments
- Fixed assets
- Audit history
- Accounting periods
- Currency settings
Test whether the destination reproduces:
- Trial balance
- Accounts receivable
- Accounts payable
- Tax totals
- Bank balances
- Revenue by period
- Outstanding invoices
Financial totals should be reconciled for each relevant reporting period, not only across the lifetime of the account.
Data Portability for Files and Creative Work
Keep both editable sources and final outputs where they serve different purposes.
A design export may preserve the appearance while losing:
- Layers
- Components
- Fonts
- Linked assets
- Variables
- Animation
- Comments
- Version history
- Templates
- Editing permissions
For important creative assets, retain:
- Original source
- Widely supported editable version where available
- Final web or print output
- Font and license information
- Linked assets
- Color values
- Export settings
- Creation application and version
Data Portability for Analytics
Dashboard screenshots and aggregate reports do not preserve analytical flexibility.
A useful analytics package may require:
- Raw events
- Event names
- Event properties
- User or session identifiers
- Timestamps
- Consent state
- Traffic source
- Campaign parameters
- Conversion definitions
- Attribution rules
- Filters
- Calculated metrics
- Time-zone settings
- Currency settings
- Bot and internal-traffic rules
Maintain a tracking dictionary outside the analytics platform. Without it, the same event name may be interpreted differently after a platform change.
Data Portability for AI Systems
AI portability includes more than downloading conversations.
Preserve:
- System instructions
- Prompt templates
- Prompt versions
- Input variables
- Tool definitions
- Output schemas
- Model and version
- Generation settings
- Source documents
- Retrieval configuration
- Chunking rules
- Evaluation cases
- Approved outputs
- Failure examples
- Human-review rules
- Generated files
- Usage and cost baselines
Embeddings and vector indexes may not behave consistently across providers or models. Preserve the original source documents, document preprocessing, and be prepared to recreate the index.
A prompt is portable as text, but its output is not guaranteed to be portable. Different models may interpret the same instruction differently. Use a representative evaluation set to test whether another system produces acceptable results.
Build Portability Into Daily Operations
Designate the System of Record
Identify which system contains the authoritative version of each important data type.
For example:
- CRM: customer identity
- Email platform: subscription and suppression state
- Accounting system: financial records
- Ecommerce platform: orders
- Website CMS: published content
When two systems can modify the same field, define which one wins.
Keep a Data Register
For each critical dataset, record:
- Dataset name
- Business purpose
- System of record
- Data owner
- Sensitivity
- Legal basis
- Retention period
- Export method
- Export format
- Estimated volume
- Destination
- Export frequency
- Last export
- Last import test
Keep Raw and Transformed Copies Separate
The raw export should remain unchanged.
Use a separate working copy for:
- Renaming fields
- Correcting formats
- Deduplicating
- Mapping values
- Removing unnecessary fields
- Restructuring relationships
Record each transformation so that it can be repeated.
Version the Schema
An export format can change even when the provider continues offering the same feature.
Record:
- Schema version
- Export date
- Added fields
- Removed fields
- Renamed fields
- Changed types
- Changed allowed values
- Changed relationship rules
Test extraction scripts and import mappings after material changes.
Measure Data Portability
Useful portability metrics include:
Record Reconciliation Rate
Record reconciliation rate = matched destination records ÷ expected source records × 100
Required-Field Completeness
Required-field completeness = populated required values ÷ expected required values × 100
Relationship Integrity
Relationship integrity = valid record references ÷ total record references × 100
Attachment Coverage
Attachment coverage = successfully transferred attachments ÷ expected attachments × 100
Import Rejection Rate
Import rejection rate = rejected records ÷ submitted records × 100
Data Freshness Lag
Data freshness lag = validation time − newest included source change
Tested Portability Coverage
Tested portability coverage = critical datasets successfully imported ÷ total critical datasets × 100
A 100% record count does not prove a correct migration. Values, totals, relationships, statuses, and business rules must also be tested.
Test a Data Export Properly
Step 1: Define the Scope
Specify:
- Included datasets
- Historical period
- Required fields
- Attachments
- Deleted records
- Business use
- Destination
- Acceptance criteria
Step 2: Create the Export
Record the account, settings, filters, start time, finish time, source time zone, and software version.
Step 3: Preserve the Raw Package
Keep the original download unchanged and record a checksum where appropriate.
Step 4: Inspect the Structure
Check:
- Files
- Headers
- Tables
- Data types
- Encoding
- Delimiters
- Date formats
- IDs
- Relationships
- Attachments
- Documentation
Step 5: Reconcile the Source
Compare:
- Record counts
- Financial totals
- Date ranges
- Status counts
- Unique identifiers
- File counts
- Active and deleted records
Step 6: Import Into a Test Destination
Use representative and difficult records, including:
- Non-Latin characters
- Long text
- Duplicate names
- Multiple currencies
- Refunds
- Deleted records
- Blank values
- Large attachments
- Historical records
Step 7: Test Business Use
Confirm that the destination can:
- Find records
- Preserve relationships
- Calculate totals
- Respect permissions
- Exclude suppressed contacts
- Open attachments
- Reproduce required reports
- Support the intended workflow
Step 8: Document Losses
Classify each loss as:
- Acceptable
- Repairable
- Material
- Blocking
Step 9: Update the Portability Record
Record the test date, result, missing data, transformation work, estimated recovery time, and next review date.
Set Data Portability Acceptance Criteria
Example criteria include:
- 100% of required record types included
- Record counts reconciled
- Financial totals reconciled
- All required identifiers preserved
- Required relationships reconstructed
- Consent and suppression states retained
- Required attachments accessible
- Character encoding verified
- Dates and time zones interpreted correctly
- Destination import completed
- Critical searches and reports work
- Excluded data documented
- Rejected records resolved or accepted
- Temporary working files securely removed
The appropriate threshold depends on the dataset. Missing one optional tag may be tolerable. Missing one payment, consent, or tax record may not be.
Secure Portable Data
Exports often concentrate information that was previously protected inside an application.
A single package may contain:
- Personal data
- Financial records
- Contracts
- Customer addresses
- Private messages
- Authentication information
- Commercially sensitive data
- Intellectual property
Protect exports by:
- Limiting who can initiate them
- Using strong authentication
- Encrypting transfers
- Storing exports only in approved locations
- Restricting access
- Logging retrieval and transfer
- Verifying the destination
- Avoiding ordinary email attachments
- Removing unnecessary fields
- Separating credentials and secrets
- Deleting temporary working files
- Applying the appropriate retention period
Do not place API keys, passwords, session tokens, private keys, or recovery codes inside ordinary portability packages.
Checksums can identify accidental changes but do not encrypt the data or prove that the sender is trustworthy.
Responding to a Personal Data Portability Request
Operational portability and the legal right to personal data portability overlap, but they are not identical.
Under GDPR-style rules, an individual may have the right to receive personal data they provided to a controller in a structured, commonly used, machine-readable format and to request direct transmission to another controller where technically feasible.
According to ICO guidance, the right applies when processing is automated and based on consent or performance of a contract. It can include information actively supplied by the person and observed data such as usage or activity history, but generally not profiles or other information inferred by the controller.
The same guidance explains that requests should normally be handled without undue delay and within one month. Direct transmission must be secure, sent to the correct destination, and must not adversely affect the rights and freedoms of other people.
A solopreneur receiving a request should:
- Record the request and receipt date.
- Verify identity proportionately.
- Confirm which processing falls within scope.
- Identify information relating to other people.
- Select a structured, commonly used, machine-readable format.
- Check the destination when direct transfer is requested.
- Transfer the information securely.
- Record what was included and excluded.
- retain evidence of completion.
- Delete unnecessary temporary files.
The right to data portability is narrower than the right of access. It also does not automatically give a business customer a right to every configuration, derived insight, proprietary feature, or operational record held by a software vendor.
Rules vary by jurisdiction and circumstances. Obtain qualified advice for actual requests or disputed obligations.
The EU Data Act and Business Portability
The EU Data Act has applied since 12 September 2025. It introduces data-access rights for users of connected products and switching requirements for qualifying cloud and data-processing services.
The official Data Act overview explains that users of connected products can access, use, and port data they co-generate, while cloud and edge providers must satisfy minimum switching and interoperability requirements.
These rules strengthen access and switching rights, but they do not guarantee that every exported dataset will preserve business logic, proprietary functions, historical context, or compatibility with a chosen destination.
Legal availability and practical usability should therefore be evaluated separately.
Establish an Export Schedule
Export frequency should reflect how much new information the business can afford to reconstruct.
| Data criticality | Example | Starting export approach |
|---|---|---|
| Critical and fast-changing | Orders, payments, active subscriptions | Automated daily or weekly export with frequent reconciliation |
| Critical and moderate-changing | Customers, consent, accounting records | Weekly or monthly export with periodic import testing |
| Important | Website content, project records, support history | Monthly or quarterly export |
| Low-change | Brand assets, policies, templates | Export after material changes and review annually |
| Archival | Closed projects, final reports | Final verified package retained according to policy |
An export schedule is not complete unless failures are detected. Monitor whether scheduled files were produced, whether their size or record count changed unexpectedly, and whether they remain readable.
Create a Data Portability Record
Use one record for each critical dataset.
Dataset
- Dataset name:
- Business purpose:
- System of record:
- Data owner:
- Sensitivity:
- Retention requirement:
Export
- Export method:
- Format:
- Frequency:
- Date range:
- Encoding:
- Time zone:
- Schema version:
- Included record types:
- Excluded record types:
- Attachments included:
- Deleted records included:
Destination
- Intended destination:
- Import method:
- Required transformations:
- Unsupported fields:
- Destination identifiers:
- Last test date:
- Test result:
Validation
- Expected record count:
- Exported record count:
- Imported record count:
- Rejected record count:
- Relationship errors:
- Missing attachments:
- Reconciled financial total:
- Known limitations:
A 60-Minute Data Portability Audit
First 15 Minutes
- List the data required to earn revenue, serve customers, and meet legal obligations.
- Identify the system of record for each dataset.
- Mark datasets that exist only in one service.
- Record the owner and sensitivity of each dataset.
Next 15 Minutes
- Locate the export method.
- Record the available formats.
- Check whether history, deleted records, and attachments are included.
- Check whether stable identifiers and relationships are preserved.
- Look for a schema or data dictionary.
Next 15 Minutes
- Export one high-priority dataset.
- Preserve the original package.
- Inspect encoding, dates, identifiers, and status values.
- Compare record and file counts with the source.
- Document missing information.
Final 15 Minutes
- Identify a credible destination.
- Import a representative sample.
- Test one important business use.
- Record repair work and limitations.
- Set the next export and full-test dates.
Data Portability Checklist
- Identify every critical business dataset.
- Define the purpose of each dataset.
- Designate its system of record.
- Record its owner.
- Classify its sensitivity.
- Record applicable retention requirements.
- Define the intended portability use.
- Identify a credible destination.
- Locate the export function.
- Record the export format.
- Check export filters.
- Check historical coverage.
- Check archived records.
- Check deleted records.
- Check attachments.
- Check custom fields.
- Check permissions.
- Check consent information.
- Check suppression information.
- Preserve stable identifiers.
- Preserve relationships.
- Preserve timestamps.
- Record the time zone.
- Record currencies and units.
- Define blank, null, and zero values.
- Obtain or create a data dictionary.
- Create an export manifest.
- Record schema and software versions.
- Preserve the raw export.
- Record checksums where appropriate.
- Reconcile record counts.
- Reconcile financial totals.
- Verify character encoding.
- Verify non-Latin text.
- Verify date interpretation.
- Verify identifier precision.
- Import a representative sample.
- Review rejected records.
- Test critical relationships.
- Test required reports and searches.
- Test consent and suppression behavior.
- Document transformations.
- Document known losses.
- Secure every export.
- Delete unnecessary temporary copies.
- Monitor automated export failures.
- Review the format after product changes.
- Repeat full reconciliation periodically.
- Treat untested exports as unverified.
- Keep portability documentation outside the source platform.
Frequently Asked Questions
What is data portability?
Data portability is the ability to retrieve data from one system and reuse it in another without unacceptable loss of content, meaning, relationships, integrity, or business usefulness.
Why is data portability important for a solopreneur?
A solopreneur often depends on third-party platforms without an internal technical team. Portable data makes software changes, recovery, compliance, contractor handovers, and business continuity more manageable.
What makes data portable?
Portable data is accessible, complete for its intended use, structured, documented, verifiable, and importable into a credible destination.
Is downloading data the same as data portability?
No. Downloading produces a copy. Portability requires that the copy can be understood and used outside the source system.
Is a CSV file portable?
CSV is suitable for simple tables when fields, encoding, dates, identifiers, and values are documented. It is less suitable for nested information, multiple related tables, attachments, permissions, and history.
What is the best format for data portability?
The best format depends on the data and destination. CSV works for simple tables, JSON or XML for nested structures, SQLite for related tables, and specialized exchange formats for email, contacts, calendars, media, and accounting.
Does an open format guarantee portability?
No. An open format can still contain incomplete, undocumented, inaccurate, or unusable data. A complete proprietary format supported by several tools may sometimes be more useful than an incomplete open export.
What is a data dictionary?
A data dictionary explains each field’s name, meaning, type, allowed values, unit, source, and relationship to other fields. It allows another person or system to interpret the exported values correctly.
What is an export manifest?
An export manifest records what a package contains, when and how it was produced, its scope, formats, schema version, record counts, checksums, and known exclusions.
Why are stable identifiers important?
Stable identifiers allow the same customer, order, payment, file, or event to be matched across exports and destination systems. Names and addresses may change and are not reliable identifiers.
Should deleted records be included?
For many migrations and incremental exports, deleted or archived states must be represented so that the destination does not retain obsolete records. Privacy and retention requirements still apply.
How can I verify an export?
Compare record counts, date ranges, statuses, identifiers, attachments, relationships, and financial totals with the source. Then import a representative sample and test the intended business use.
Is a PDF a portable data format?
PDF is useful for fixed records, evidence, and human reading. It is usually unsuitable for rebuilding structured data such as transactions, customer records, inventory, or analytics events.
Are cloud backups portable?
Not necessarily. Some cloud backups can be restored only through the original provider. Test whether the backup can be read or restored in another environment.
Are email subscribers portable?
Email addresses may be portable, but a lawful and operationally accurate migration also requires consent, unsubscribe, complaint, bounce, and suppression states. Do not import every address as subscribed.
Are stored payment methods portable?
Sometimes, but they are not ordinary export fields. Transfer depends on the providers, security requirements, contracts, payment methods, and jurisdiction. Customers may need to authorize the new provider.
Are analytics dashboards portable?
Dashboard images and reports preserve results, not the underlying analytical capability. Preserve raw events, definitions, properties, filters, time zones, and attribution rules where future analysis matters.
Are AI conversations and prompts portable?
Text conversations and prompts can usually be exported, but identical behavior is not guaranteed in another model. Preserve instructions, sources, tool definitions, settings, schemas, and evaluation cases.
How often should data be exported?
Frequency should reflect how much information the business can afford to recreate. Fast-changing revenue and customer data may need daily or weekly exports, while low-change assets may be exported after material updates.
How often should portability be tested?
Test critical datasets at least annually, before important software decisions, and after material changes to the source schema, export feature, API, destination, or business process. High-impact datasets may justify more frequent tests.
Does GDPR give a business the right to all vendor-held data?
No. The GDPR right to data portability concerns qualifying personal data of individuals. It does not automatically provide a business with every commercial record, configuration, workflow, derived insight, or proprietary asset held by a vendor.
What should a solopreneur do first?
Identify the datasets that support customers, revenue, delivery, and legal obligations. Export the highest-priority dataset, inspect its contents, document its meaning, and test whether a credible destination can import it.
