[invisit](https://invisit.dev) · [Docs](https://invisit.dev/docs) · [llms.txt](https://invisit.dev/llms.txt) · [llms-full.txt](https://invisit.dev/llms-full.txt)

# 7 best DataFast alternatives in 2026, compared on revenue

> Plausible, Umami, PostHog, invisit and 3 more DataFast alternatives: how each gets revenue, ties it to channels, and handles cookies, EU data and export.

- Author: Miraç Berk
- Published: 2026-11-03
- Page: https://invisit.dev/blog/datafast-alternatives
- Tags: datafast, revenue, alternatives

![Soft 3D coins and a small revenue chart resting among seven frosted analytics cards, lit by violet dithered light and shadow.](https://invisit.dev/_astro/cover.DR9U8Auh.png)

The best DataFast alternatives in 2026 are Plausible, Umami, PostHog, invisit, Fathom, Google Analytics 4 and Stripe's own dashboard, and the right one depends on what DataFast does not give you. For revenue credited to campaigns without a cookie, Plausible's Business plan is the closest replacement: it credits each purchase to the source, campaign and landing page of the visit it happened in, and costs $39 a month at 100K page views.

No tool on this list matches DataFast's revenue attribution by channel. Here is the best pick for each reason to leave, as of November 2026:

- No cookie or banner, with revenue still credited to campaigns: Plausible Business.
- Payments imported from Stripe, Paddle or Polar and linked to visitors for $20 a month, or analytics on your own server: Umami.
- Raw events, SQL and revenue per customer, free up to 1M events: PostHog.
- Revenue beside traffic with nothing added to your checkout, plus a free plan, unlimited team members, heatmaps and web vitals: invisit, the tool we build. It does not attribute revenue to sources.
- An agency with dozens of client sites and simple purchase values: Fathom.
- Attribution models for free, if you already run a consent banner and buy Google Ads: Google Analytics 4.
- MRR and churn only, with no traffic data: Stripe's Billing analytics.

Stay on DataFast if revenue per channel is the number you manage by. DataFast ties each payment to the visitor who made it, through a year-long cookie and a visitor id passed into your checkout, then splits revenue, MRR, LTV and churn by channel, campaign and page, adds revenue estimates to Search Console keywords and ROAS to Meta Ads campaigns. The last two sections cover when to stay and how to switch without losing your history.

## Why do people look for DataFast alternatives?

People leave DataFast over six limits: no free plan, a year-long cookie by default, data stored mostly outside the EU, one site and one seat on Starter, no raw event export, and no heatmaps or web vitals. Each comes from DataFast's own pages, checked on November 3, 2026.

- Price and no free plan. [DataFast's pricing](https://datafa.st/#pricing) has Starter at $19 a month for 100K events and $69 for 1M, and Growth at $39 and $139. Events are page views, goals and payments summed across your sites. There is a 14-day trial without a card, and no free plan. At 100% of the plan, [DataFast's terms](https://datafa.st/tos) lock the dashboard until you upgrade.
- Starter is one site and one person. Starter allows one website, one team member and three years of data. A second site or a colleague means Growth (30 of each), which costs about twice as much at every volume.
- A year-long cookie. The default `script.js` sets `datafast_visitor_id` for 365 days, and [DataFast's GDPR guide](https://datafa.st/docs/gdpr-cookieless-tracking) says you may need a cookie banner for it. The cookieless script added in April 2026 makes multi-day journeys and revenue attribution less accurate, and DataFast's [announcement](https://datafa.st/changelog/cookieless-tracking-script) advises against switching if attribution is central to your business.
- Data outside the EU. [DataFast's DPA](https://datafa.st/dpa) says most of its infrastructure is outside the EU, including the United States, and the agreement is governed by Singapore law.
- No raw data. The same DPA says DataFast "does not provide consolidated archive exports or raw event logs". You get aggregates and visitor lookups through the API and CLI, and the terms say data is deleted 30 days after you cancel.
- Missing reports. DataFast has no heatmaps, web vitals, session replay or self-hosted edition, and its crawler tracking includes 100,000 requests per billing cycle, then $9 a month per extra million ([bot traffic](https://datafa.st/docs/bot-traffic-tracking)).

## What to look for in a DataFast alternative

Judge a DataFast alternative on how it gets revenue first, then on the limit that made you look. Tools that look alike on a feature grid split apart on these points:

- How revenue gets in. A payment provider connection reads payments, renewals and refunds with no code. Values your code sends with an event miss anything that never passes through the visitor's browser, such as renewals.
- Whether revenue is tied to a channel, and how. Per visit (Plausible, Fathom), per identified customer through an id you put in the payment (Umami, PostHog), across visits through a cookie (GA4, DataFast), or not at all (invisit, Stripe).
- Cookies by default, and where data is stored.
- Price at your volume, in the vendor's own unit, and whether there is a free plan.
- Team members and sites per plan.
- Raw data export, heatmaps, web vitals and self-hosting.

The second point is the real trade. Attribution that spans days needs something that recognises the same buyer across those days: a cookie, or an id you pass into the payment. A cookieless tool without that id can credit revenue within one visit or not at all, which is [what a daily hash can and can't count](/blog/cookieless-analytics).

> [!NOTE]
> invisit is the product we build. It sits at number 4, placed by the situation it wins, and its entry lists its limits the same way the others do.

## How do DataFast alternatives get revenue and tie it to channels?

DataFast alternatives get revenue in one of three ways: a payment provider connection, values your code sends with an event, or the payment provider's own dashboard. The ones that tie revenue to a channel need either an id in your checkout or an event on your success page.

| Tool                     | How revenue gets in                                                        | Tied to a channel                                                                                | Payment providers                                                                                       |
| ------------------------ | -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------- |
| DataFast (reference)     | Provider connection; attribution needs the visitor id in checkout metadata | Yes, per visitor, across visits for up to a year                                                 | Stripe, Lemon Squeezy, Polar, Paddle, Shopify, WooCommerce; others through its Payments API             |
| Plausible Business       | Revenue goals sent from your code                                          | Yes, to the visit's source, campaign and landing page                                            | None connected; WooCommerce plugin, Shopify pixel, code guides for Stripe, Paddle, Lemon Squeezy, Polar |
| Umami Cloud Pro          | Provider connection, or `revenue` and `currency` sent with an event        | Only with `umami_distinct_id` in payment metadata; credits the latest visit in the prior 90 days | Stripe, Paddle, Lemon Squeezy, Dodo Payments, Polar, WooCommerce                                        |
| PostHog                  | Stripe through its data warehouse, or revenue events from code             | Through person profiles, once `posthog_person_distinct_id` is in Stripe metadata                 | Stripe; Chargebee, Polar and RevenueCat listed as coming soon                                           |
| invisit                  | Provider connection, no checkout code                                      | No                                                                                               | Stripe, Paddle, Polar, Lemon Squeezy, Creem, Dodo Payments                                              |
| Fathom                   | Event values in cents, sent from your code                                 | Yes, to the session's referrer and UTM tags, by filtering                                        | None connected                                                                                          |
| Google Analytics 4       | `purchase` events sent from your code                                      | Yes, data-driven or last-click models across sessions, through the `_ga` cookie                  | None connected                                                                                          |
| Stripe Billing analytics | Native                                                                     | No, it holds no traffic data                                                                     | Stripe only                                                                                             |

Code-sent revenue undercounts by design. [Plausible's revenue docs](https://plausible.io/docs/ecommerce-revenue-tracking) say payment provider webhooks "can't be linked to the visit that led to the payment", and renewals charged later never pass through the buyer's browser. A provider connection sees those payments, but it needs an id in the payment to know which visitor made it, which is the same job DataFast's `datafast_visitor_id` metadata does.

Backfill differs too. Umami imports only payments made after you connect, invisit reads the last 90 days when you connect, and code-sent tools start from the day you deploy the event.

## DataFast alternatives compared: price, cookies, EU data, team and export

As of November 2026, PostHog and Google Analytics 4 cost nothing at 100K page views, Umami Cloud Pro covers 1M events with a payment provider connection for $20, and Plausible, Umami, invisit and Fathom are the only ones cookieless by default.

| Tool                 | 100K / 1M a month        | Free plan          | Cookieless by default | EU data                   | Team members               | Raw data export                    | Heatmaps, web vitals                 | Self-hostable              |
| -------------------- | ------------------------ | ------------------ | --------------------- | ------------------------- | -------------------------- | ---------------------------------- | ------------------------------------ | -------------------------- |
| DataFast (reference) | $19 to $39 / $69 to $139 | No, 14-day trial   | No, opt-in script     | No, mostly outside the EU | 1 on Starter, 30 on Growth | No; aggregates and visitor lookups | No / No                              | No                         |
| Plausible Business   | $39 / $139               | No, 30-day trial   | Yes                   | Yes, Germany              | 10                         | Daily CSVs per report              | No / No                              | Yes, without revenue goals |
| Umami Cloud Pro      | $20 / $20                | Yes, Hobby: 100K   | Yes                   | EU or US, at signup       | 10 (Business: unlimited)   | Gzipped CSV of events and sessions | Business plan / Opt-in               | Yes, MIT                   |
| PostHog              | Free / about $50         | Yes, 1M events     | No, opt-in mode       | EU or US, at signup       | Unlimited                  | SQL and batch exports              | Yes / Opt-in, billed as events       | Yes, unsupported           |
| invisit              | $14 / $49                | Yes, 20K events    | Yes                   | Yes, Germany              | Unlimited, every plan      | Each visit through the REST API    | Yes / Yes, never billed              | No                         |
| Fathom               | $15 / $60                | No, 7-day trial    | Yes                   | No, stored in the US      | One login                  | Report CSVs                        | No / No                              | No                         |
| Google Analytics 4   | Free / Free              | Free at any volume | No, 2-year cookies    | No                        | Yes, five roles            | BigQuery, 1M events a day          | No / Only if you send them as events | No                         |

Prices are monthly in each vendor's own unit. DataFast counts page views, goals and payments; Plausible and Fathom count page views and custom events; Umami counts events plus one for each stored property; PostHog counts every event, at least two per page view, so 1M page views is about 2M events; invisit counts page views, custom events, conversions and short-link clicks. Plausible's row is Business, the plan with revenue goals, and Umami's is Pro, the plan with payment providers. Stripe's dashboard is left out because it records no traffic.

## 1. Plausible: best for revenue by campaign without cookies

Plausible is the closest DataFast alternative if you want each purchase credited to a source and campaign without a cookie. Plausible's revenue goals, on its Business plan, credit a purchase to the source, campaign and landing page of the visit it happened in, and Plausible keeps the data at Hetzner in Germany with only EU-owned providers, CDN included ([EU hosting](https://plausible.io/eu-hosted-web-analytics)).

Plausible beats DataFast on privacy and keeps much of its revenue reporting, within a visit. Plausible sets no cookies and deletes the salt behind its visitor hash every 24 hours ([data policy](https://plausible.io/data-policy)). Once you filter by a revenue goal, every report gains a revenue column you can sort by, funnel steps show revenue, and purchases in other currencies are converted to the goal's base currency. Plausible also imports GA4 history, shows Search Console queries and emails reports.

Plausible's attribution ends with the visit. A visit lasts while a visitor's events are less than 30 minutes apart, so a buyer who read your pricing page on Monday from a newsletter and paid on Friday from a bookmark is credited to Friday's direct visit. There is no provider connection, no MRR or LTV, no heatmaps, no per-visit view and no web vitals, and Business stops at 10 sites and 10 team members.

Plausible bills page views plus custom events. As of November 2026, [Plausible Business](https://plausible.io/#pricing) costs $39 a month at 100K and $139 at 1M; Starter and Growth have no revenue goals. There is no hosted free plan, the trial is 30 days, and the self-hosted Community Edition leaves out revenue goals.

Moving from DataFast to Plausible means replacing the checkout metadata with a `Purchase` event on your success page, sent with `revenue: { amount, currency }` in the main currency unit. Plausible's [CSV import](https://plausible.io/docs/csv-import) takes daily aggregates from other tools in its own format, so DataFast's daily visitors and page views can be reshaped into its `imported_visitors` table, but "Ecommerce revenue data are not supported". See [Plausible vs invisit](/compare/plausible).

## 2. Umami: best for provider revenue tied to visitors on a small budget

Umami is the DataFast alternative that works most like DataFast. Umami Cloud imports payments and refunds from your provider, and if you pass an id into the payment, ties each one to the visitor and their referrer and campaign. Umami Cloud's Pro plan does this for $20 a month up to 1M events, and Umami is MIT-licensed if you would rather run it yourself.

Umami beats DataFast on price and openness. [Umami's payment providers](https://docs.umami.is/docs/cloud/payment-providers) are Stripe, Paddle, Lemon Squeezy, Dodo Payments, Polar and WooCommerce, imported every hour with the previous 7 days rechecked for late refunds. Umami sets no cookies, offers an EU or a US region, has funnels, journeys, retention and a first-click or last-click [attribution report](https://docs.umami.is/docs/attribution) on every plan, and exports page views, events and sessions as gzipped CSV.

Linking payments to visitors is DataFast's pattern under a new key. You call `umami.identify()` with an id and put the same id in a `umami_distinct_id` metadata field; Umami then credits the visitor's most recent visit in the 90 days before the payment. Lemon Squeezy payments cannot be linked, Umami imports only payments made after you connect, and its docs describe payment providers for Umami Cloud only. Umami stores the id you pass to `identify()` as you send it, so pass an opaque id, not an email address.

Umami counts each page view and custom event as one event and each stored property as one more, so `umami.track('purchase', { revenue: 49, currency: 'USD' })` uses three. As of November 2026, [Umami's pricing](https://umami.is/pricing) has Hobby free to 100K events (one site, six months of data, no payment providers), Pro at $20 for 1M (20 sites, 10 team members, two years), and Business at $200 for 10M, the plan with heatmaps and session replays.

Moving from DataFast to Umami: swap `datafast_visitor_id` for `umami_distinct_id` on the Stripe customer or charge, Paddle custom data, Polar or Dodo Payments metadata, or WooCommerce order meta. From Pro, Umami's team [imports CSV exports](https://docs.umami.is/docs/cloud/import-data) from other platforms on request, so ask whether your DataFast export fits before you cancel. See [Umami vs invisit](/compare/umami).

## 3. PostHog: best for raw data and revenue per customer

PostHog is the DataFast alternative when what you miss is raw data: every event is stored in PostHog, queryable with SQL and exportable to your own warehouse, and Stripe revenue lands on person profiles. PostHog is free up to 1M events a month.

PostHog beats DataFast on data access and breadth. [Batch exports](https://posthog.com/docs/data-pipelines/batch-exports) send events, persons and sessions to S3, BigQuery, Snowflake, Postgres and others; seats are unlimited; PostHog Cloud EU runs in Frankfurt. Session replay, heatmaps, feature flags and experiments share the same events, and [marketing analytics](https://posthog.com/docs/web-analytics/marketing-analytics), in beta, pulls ad cost from Google, Meta, LinkedIn, TikTok, Reddit and Bing, the nearest thing here to DataFast's Meta ROAS.

PostHog's revenue is something you assemble. PostHog [removed its dedicated revenue dashboard](https://posthog.com/docs/revenue-analytics) and now puts revenue properties on persons and groups for insights and SQL. Stripe connects through the data warehouse, with Chargebee, Polar and RevenueCat listed as coming soon; any other provider means sending revenue events from code. Tying Stripe payments to people needs a `posthog_person_distinct_id` metadata field on the Stripe customer, subscription or payment ([connect to customers](https://posthog.com/docs/revenue-analytics/connect-to-customers)), and splitting revenue by a person's first referrer or UTM source is an insight you build.

By default posthog-js sets a first-party cookie for 365 days; cookieless mode needs settings in code and in the project and turns off replay and surveys for visitors without consent. The script measured about 119 KB gzipped. As of November 2026, [PostHog's pricing](https://posthog.com/pricing) makes 100K page views free, and 1M page views (about 2M events) about $50 a month. Synced Stripe rows are free up to 1M a month while revenue analytics is in beta.

Moving from DataFast to PostHog: replace `datafast_visitor_id` with `posthog_person_distinct_id` in your Stripe calls. PostHog's managed migrations cover Mixpanel, Amplitude and S3, not DataFast. See [PostHog vs invisit](/compare/posthog).

## 4. invisit: best for revenue beside traffic with no checkout code

invisit, the tool we build, is for when you want revenue on the same screen as your traffic without the attribution plumbing. You connect Stripe, Paddle, Polar, Lemon Squeezy, Creem or Dodo Payments, and there is nothing to add to your checkout. invisit does not attribute revenue to sources, campaigns or visitors, so it shows what you earned next to the traffic you had, not which channel earned it.

invisit beats DataFast on privacy, plan limits and the reports DataFast lacks. invisit sets no cookies: a hash with a salt generated for each UTC day tells visitors apart, and the salt is deleted about 25 hours after the day ends. Data is stored in Falkenstein, Germany. invisit reads payments, refunds, disputes, fees and net, back to 90 days before you connect ([connect a provider](https://invisit.dev/docs/guides/revenue.md#connect-a-provider)). Every plan has unlimited team members, heatmaps, web vitals that are never billed, crawler reads that are never billed, and data kept forever, and the [REST API](https://invisit.dev/docs/api/rest.md) returns any visit step by step at any age.

invisit's limits against DataFast are real. There is no revenue by channel and no MRR, churn or LTV report, no Search Console, no ad spend or ROAS, no Shopify or WooCommerce connection, no self-hosting, no history import, no email reports and no mobile SDKs. invisit's 8.5 KB script is heavier than DataFast's `script.js`, which measured 5,263 bytes gzipped on November 3, 2026, and Cloudflare, a US company, runs invisit's DNS and CDN.

invisit bills page views, custom events, conversions and short-link clicks. The free plan covers 20,000 events a month on 4 sites, revenue totals and charts included (the list of individual charges needs a paid plan). Paid plans cost $14 for 100K, $49 for 1M and $199 for 10M a month ([pricing](/pricing)), with a 14-day trial and no card.

Moving from DataFast to invisit: connect your provider, replace `window.datafast()` goals with `track()`, and delete the visitor-id metadata once DataFast is off. invisit cannot import DataFast history. See [DataFast vs invisit](/compare/datafast).

![invisit's revenue card over 30 days: net $34,844.82, gross $36,617.00, 245 payments and $637.00 refunded, with net and gross charted by day.](https://invisit.dev/_astro/revenue.DuGBhtAK.png)

*Revenue read from the payment provider, net and gross by day, with sample data from the live demo.*

## 5. Fathom: best for agencies sending purchase values from many sites

Fathom suits an agency or a set of small stores that wants cookieless analytics with a value on each purchase. Every Fathom plan includes at least 50 sites, and filtering the dashboard by a UTM campaign and a purchase event shows that event's completions and value from the campaign's visitors.

Fathom beats DataFast on sites per dollar and client reporting. Fathom sets no cookies, emails unlimited weekly or monthly reports, gives each client a share link with an optional password, imports GA4 page views and shows Search Console terms. Its script measured about 2 KB gzipped. [Fathom's campaign docs](https://usefathom.com/docs/features/campaigns) credit an event to the UTM tags of the session it happened in, even on a later page.

Fathom is thinner on revenue than DataFast. A value is cents you send from code with `fathom.trackEvent()`, and Fathom's currency settings only control display: "They don't convert between currencies" ([event tracking](https://usefathom.com/features/event-tracking)). There is no provider connection, no funnels, no heatmaps and no web vitals. A Fathom account has one login, and Fathom stores its anonymized analytics in the US.

As of November 2026, [Fathom's pricing](https://usefathom.com/pricing) is $15 a month up to 100K page views and $60 at 1M, with 50 extra sites for $10 a month. There is no free plan; the 7-day trial needs a card.

Moving from DataFast to Fathom: replace the checkout metadata with `fathom.trackEvent('purchase', { _value: 4900 })` on your success page, and DataFast goals with named events. Fathom imports GA4, not DataFast. See [Fathom vs invisit](/compare/fathom).

## 6. Google Analytics 4: best free attribution if you already run a consent banner

Google Analytics 4 is the free option with the deepest attribution: its Attribution reports credit `purchase` events across sessions with a data-driven or a last-click model, at any volume. The cost is the `_ga` cookie, which lasts two years and needs consent in the EU and UK.

GA4 beats DataFast on price and on Google's own channels. [Data-driven attribution](https://support.google.com/analytics/answer/10596866) credits each click on the path to a key event by its estimated contribution, GA4 key events become Google Ads conversions, Search Console links in, and a standard property's BigQuery Export sends up to 1M raw events a day.

GA4 has no payment provider connection. Revenue comes from [ecommerce events](https://developers.google.com/analytics/devguides/collection/ga4/ecommerce) you send, and a server-side purchase through the Measurement Protocol needs a `client_id` that ["should match the ID generated by the Google Analytics tag"](https://developers.google.com/analytics/devguides/collection/protocol/ga4/sending-events), the same id-passing job as DataFast's metadata. Behind a banner, buyers who decline go missing unless the property qualifies for modeled data. Google removed the first click, linear, time decay and position-based models in November 2023, GA4 has no EU storage option, and gtag.js measured 155 to 179 KB gzipped.

Moving from DataFast to GA4: send a `purchase` event with `transaction_id`, `value` and `currency` from your success page, and keep your consent banner. GA4 imports no history from other tools. See [Google Analytics 4 vs invisit](/compare/google-analytics).

## 7. Stripe's Billing analytics: best when MRR and churn are all you need

If the DataFast chart you read most was revenue, Stripe's Billing analytics may already cover it. It reports revenue, subscribers, trials and churn, groups charts such as MRR growth and churned revenue by product or price, and exports metrics as CSV ([Billing analytics](https://docs.stripe.com/billing/subscriptions/analytics)). It also benchmarks LTV, ARPU and churn against similar businesses, for accounts that meet requirements including at least five active subscriptions ([benchmarks](https://docs.stripe.com/billing/subscriptions/analytics/benchmarking)).

Stripe's dashboard has no traffic data, so it cannot say which channel brought a customer. UTM codes on a Payment Link that redirects to your site are added to that redirect URL after payment ([Stripe's Payment Links docs](https://docs.stripe.com/payment-links/url-parameters)), where an analytics tool on the page can read them.

Billing analytics is part of Stripe Billing, which costs 0.7% of billing volume on pay-as-you-go ([Stripe Billing pricing](https://stripe.com/billing/pricing)); if you already bill subscriptions through Stripe Billing, you are paying for it. Pair it with any cookieless tool and you have DataFast's two charts on two screens, without the join between them.

## When should you stay on DataFast?

Stay on DataFast when you decide where to spend from revenue per channel over weeks or months. DataFast is the strongest tool in this field for that, and it is the better choice in these cases:

- Long paths to purchase. The year-long cookie joins a visit in March to a payment in June, which per-visit tools cannot do.
- Revenue, MRR, LTV and churn by channel, campaign and page, revenue at each funnel step, and a live buyer score once a site has 1,000 visitors and 10 attributed payments ([revenue prediction](https://datafa.st/changelog/revenue-prediction)).
- Ad and search spend. Meta Ads campaigns get ROAS, and Search Console keywords get revenue estimates.
- Shopify or WooCommerce stores, which DataFast connects directly.
- One site at 2M to 10M events, where Starter costs $89 to $169 a month, less than invisit, Fathom or Plausible Business at those volumes.

If cookies are your only problem, try DataFast's `script.cookieless.js` before switching tools, and accept the weaker multi-week attribution DataFast describes.

## How do you switch from DataFast without losing data?

Export first, because DataFast deletes your data 30 days after you cancel and has no raw event export; then run the new tool beside DataFast for two to four weeks before you remove the script and the checkout metadata.

1. Export aggregates with the [DataFast CLI](https://datafa.st/docs/cli-analytics), as below. Breakdowns such as `referrers` and `pages` return attributed revenue, and 50 rows unless you raise `--limit` and page with `--offset`. For paying customers, `datafast visitors list --is-customer` finds them and `datafast visitors get <id>` returns each one's journey and payments ([visitors](https://datafa.st/docs/cli-visitors)).
2. Import what your new tool accepts. Plausible takes daily traffic in its CSV format but no revenue, and Umami's team imports CSV exports from Pro on request. invisit, Fathom and GA4 cannot import DataFast history, and PostHog's managed migrations do not cover it.
3. Install the new tracker next to DataFast's script. Both can run on the same pages.
4. Rewire your checkout using the table below, keeping DataFast's metadata until DataFast is off.
5. Compare for two to four weeks. Expect higher unique visitor counts over multi-day ranges from a tool with a daily hash, which counts someone who returns on three days three times, and lower revenue from code-sent tools than from a provider connection.
6. Remove DataFast's script, its `window.datafast()` calls and the metadata code, then cancel. Remove your cookie banner only if nothing else on the page sets cookies.

```sh title="export-datafast.sh"
# Run before you cancel. Set a default website first: datafast config set-website <websiteId>
set -euo pipefail
mkdir -p datafast-export

datafast --json analytics timeseries --fields visitors,pageviews,sessions,revenue,payments \
  --interval day --period all > datafast-export/daily.json

for report in referrers campaigns pages countries devices goals; do
  datafast --json analytics "$report" --period all > "datafast-export/$report.json"
done
```

| Moving to          | What replaces the `datafast_visitor_id` metadata                                 |
| ------------------ | -------------------------------------------------------------------------------- |
| Plausible          | A `Purchase` event with `revenue: { amount, currency }` on your success page     |
| Umami              | `umami_distinct_id` in payment metadata, and `umami.identify()` with the same id |
| PostHog            | `posthog_person_distinct_id` in Stripe metadata                                  |
| invisit            | Nothing; delete it and connect your provider                                     |
| Fathom             | `fathom.trackEvent()` with `_value` in cents on your success page                |
| Google Analytics 4 | A `purchase` event with `transaction_id`, `value` and `currency`                 |
| Stripe's dashboard | Nothing                                                                          |

> [!WARNING]
> The `datafast_visitor_id` cookie stays in returning visitors' browsers for up to a year after you remove DataFast's script, so checkout code that copies it keeps writing an id nothing reads. Delete that code when you cancel. Ids already saved on past Checkout Sessions can stay: once DataFast deletes your data, nothing joins them back to a visit.

### Before you cancel DataFast

- [ ] Daily time series and breakdowns exported with the CLI, attributed revenue by referrer and page included.
- [ ] Paying customers' journeys saved with `datafast visitors get`, if you need them.
- [ ] The new tool has run beside DataFast for two to four weeks.
- [ ] Your payment provider is connected, or a purchase event fires on your success page.
- [ ] Checkout code no longer writes `datafast_visitor_id` or `datafast_session_id`.
- [ ] `window.datafast()` goal, identify and payment calls are replaced or removed.
- [ ] A DataFast proxy or `@datafast/ai-crawl` is removed, if you used one.
