ONLYFANS DATA EXPORT

Export OnlyFans data as CSV, XLSX, JSONL or ZIP

Turn native OnlyFans and Fansly records into downloadable files. Choose a supported dataset, create a background job and check its result before downloading.

Start free with 1,000 credits · no card · one key for OnlyFans and Fansly

Choose a dataset for your platform

Export structured native records from a connected account you are authorized to access. Dataset availability is platform-specific.

OnlyFans

subscribers, expired_fans, following, transactions, posts, chats, mass_messages, direct_messages, profile_visitors, trial_links, tracking_links, chat_messages, payouts, chargebacks, public_profiles, smart_links.

Fansly

subscribers, subscriptions, transactions, chats, following and chat_messages. Use the Fansly account identifier with the same export job endpoints.

chats contains conversation metadata, not complete transcripts. The OnlyFans direct and mass-message datasets contain statistics. Use chat_messages with params.chat_id for one conversation. Original-media archives are not enabled.

CSV, JSONL, XLSX or data ZIP

Use CSV for tabular imports, JSONL for raw records, XLSX for spreadsheets, or ZIP for data.csv plus manifest.json. Large identifiers remain text in XLSX. Formula-like text and headers are escaped in CSV/ZIP; JSONL preserves raw values.

CSV, XLSX and ZIP have a 512 MiB private row-spool limit. Spreadsheet cell and row limits are enforced. Treat exported records as private data and store downloads securely. Original-media archives are not available in this release. Data ZIP contains structured records, not media binaries.

Create a bounded export

This OnlyFans example creates an XLSX job with at most 100 transaction rows. Replace the account placeholder. Creating the job costs 10 credits; it does not publish or send platform content.

curl --fail-with-body --silent --show-error -X POST \
  -H "X-API-Key: $CREATOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"dataset":"transactions","fmt":"xlsx","max_rows":100}' \
  "https://api.creator-api.com/v1/{account}/exports"

Read GET /v1/exports/{job_id} until the status is completed, failed or cancelled. Only download a completed job through GET /v1/exports/{job_id}/download with your key, or its short-lived signed URL. Never interpret a queued job as a completed export. Delete your own finished export and its output with DELETE /v1/exports/{job_id}; a full-scope key and staff export-manage permission are required. Source platform data is never deleted.

Export daily OnlyFans profile visits

Set dataset=profile_visitors and params={"start_date":"2026-10-01","end_date":"2026-10-04"}. Dates are inclusive UTC days, 1–366 days per job, with native reads in windows of at most 31 days. The four formats are supported.

Each row contains date, visitors, visitor_type=total and period_complete. Today's UTC day is marked incomplete. No visitor identities are returned. Missing, duplicate or non-daily source dates fail the job; they are not filled with invented zeros.

Understand coverage before reconciliation

Exports follow each dataset's native pagination. Detected malformed pages, repeated pages, stalled cursors and exhausted safety budgets fail the job and use the existing refund path. Failed jobs have no downloadable partial file.

These checks do not guarantee a transactionally consistent snapshot or unlimited native history. OnlyFans expired-fan exports retain the provider's 5,000-row ceiling. An explicit max_rows is a deliberate limit. Compare account totals and reporting dates before treating a file as a full backfill.

For finance reports, see the revenue and export walkthrough. For platform-specific routes and billing, use the OnlyFans reference and Fansly reference.

Data export questions

What OnlyFans data can I export?

OnlyFans supports subscribers, expired_fans, following, transactions, posts, chats, mass_messages, direct_messages, profile_visitors, trial_links, tracking_links, chat_messages, payouts, chargebacks, public_profiles and smart_links. Each dataset has its own native coverage and parameters.

What formats are available?

CSV, JSONL, XLSX and data ZIP. Data ZIP contains data.csv and manifest.json. Original-media archives are not enabled; data ZIP does not contain media binaries. XLSX stores long identifiers as text. Formula-like CSV values and headers are escaped with an apostrophe; JSONL preserves raw values.

Does the chats export contain full message history?

No. chats exports conversation metadata. Use chat_messages with params.chat_id for one OF or Fansly conversation. Native retention and scan limits still apply. mass_messages and direct_messages contain statistics.

Can I export Fansly data?

Yes. Fansly supports subscribers, subscriptions, transactions, chats, following and chat_messages through the same job API and four formats. OnlyFans-only datasets, including profile_visitors and posts, are not enabled for Fansly.

Does profile_visitors identify individual visitors?

No. It returns daily total visit counts with date, visitors, visitor_type and period_complete. Use start_date and end_date for 1–366 inclusive UTC days. Missing dates fail the job rather than becoming guessed zeros.

Are exports guaranteed to contain an entire account history?

No. Native retention and endpoint limits still apply, and account data can change during a scan. expired_fans is limited to the provider's 5,000-row ceiling. max_rows intentionally bounds a job. Detected malformed or incomplete pagination fails the job instead of publishing a partial success.

How much does an export cost?

Creating a job costs 10 credits. Failed or empty jobs use the existing refund process. Check the API reference for status and download requests and keep API keys on your backend.

Your data, in a file you own

Start free with 1,000 credits, connect an account and run your first export in minutes.

Start free with 1,000 credits · no card