Import analytics history

Import history brings supported exports from Plausible, PostHog, Simple Analytics, or Umami into a Databuddy website. It is separate from installing a new tracker: an import adds historical reporting data, while the installation guide sets up future collection.

Start with a small export and check its preview before importing your full history. Keep the original files so you can compare reports and investigate differences later.

Choose a supported export

ProviderFile to useWhat to expect
PlausibleThe Site Settings data-export ZIP, or a supported dashboard-download ZIP with daily totalsAggregate traffic is reconstructed for historical reporting. A dashboard download may have approximate daily breakdowns.
PostHogEvent JSON lines containing $pageview records; gzip-compressed files are also supportedPageviews and sessions are rebuilt from the exported pageviews and available context. Arbitrary custom events are not imported.
Simple AnalyticsCSV data points with the added_iso and is_unique fieldsUse a pageview export. The importer builds traffic reports from these rows; it does not migrate event definitions or metadata schemas.
UmamiThe supported data export or its website_event.csv, optionally gzip-compressedPageviews and available traffic context are imported. Custom events are skipped.

The file picker accepting .json or .zip does not mean every JSON structure or archive is supported. PostHog data must contain one event object per line; a JSON array or Parquet file is not a substitute. GA4 and Matomo exports are not supported by this importer.

Importing a provider's history does not migrate its dashboards, saved reports, goals, funnel definitions, feature flags, replay recordings, payment records, or user profiles. Configure the reports and future events you need separately.

Try a synthetic Plausible export

Download the synthetic Plausible sample and use a separate test website with no existing traffic for these dates. The archive contains invented daily traffic and page totals, not customer data.

The preview should identify a Plausible data export covering October 1–2, 2026, with 20 pageviews and 9 visitors. The visitor figure sums the supplied daily counts; it is not evidence of nine distinct people across the period. The sample has no custom events or payment data.

Previewing the sample lets you inspect the file without importing it. Choose Start import only if you want these synthetic rows in that test website. The sample is an example of the supported shape, not a template for relabeling another provider's incompatible export.

Preview and import

  1. Open the destination website in Databuddy, then Settings → Import history. Your account needs permission to update that website.
  2. Choose the export file. Databuddy identifies the format and displays its period, visitors, and pageviews. Read any format-specific note before continuing.
  3. For aggregate exports such as Plausible, set Timezone in Plausible to the source site's timezone. A date-only total needs that timezone to land on the intended local day.
  4. Decide whether this file adds another non-overlapping period or replaces an earlier import from the same provider. Leave Replace previous import off for a first import or for separate date-range files you intend to keep together.
  5. Choose Start import and wait for Import complete. An accepted preview does not prove that the upload has finished.
  6. Open the website's reports using the same historical dates and timezone. Compare daily pageviews and top paths first, then inspect the breakdowns your export actually contains.

The preview is a file summary. Your final reports can differ because of overlap protection, unsupported fields, reconstruction, or differences in metric definitions. Do not use a match on one headline total as proof that every report transferred.

Plausible: full export versus dashboard download

For historical portability, prefer Plausible's Site Settings → Imports & Exports → Export data flow. Its native export includes daily report rows. Plausible notes that this export excludes data previously imported into Plausible from other sources; archive that earlier history separately. See Plausible's export instructions.

A dashboard download follows the selected date range, filters, and chart interval. Its visitor file can contain daily totals while other files contain totals for the entire period. Databuddy spreads supported multi-day breakdowns across days in proportion to each day's traffic. Those are reconstructed allocations, not original observations for each day.

If Databuddy reports that the download is grouped by week or month, export with the chart interval set to days or use the Site Settings export. Check that your export includes page totals as well as visitor totals; an isolated visitor summary cannot populate page reports.

Even a full aggregate export cannot recover the original order of individual visits. Databuddy reconstructs sessions and reporting rows from the available totals. Imported combinations of dimensions, intraday timing, visitor journeys, and duration calculations should not be treated as original event-level evidence. Custom-event totals in a Plausible export do not become completed business events in Databuddy.

For tracker cutover, event mapping and preserving your older reports, continue with the Plausible migration guide.

PostHog, Simple Analytics and Umami

For PostHog, use an event export with timestamps, visitor identifiers and $pageview records. Do not use a dashboard image, insight export, or persons-only export. PostHog's batch export documentation explains event models and destinations. Choose a compatible JSON-lines output; not every available destination format can be uploaded to Databuddy. The PostHog adapter guide covers replacing future SDK calls separately.

For Simple Analytics, export pageview data points as CSV and retain the fields required for identifying the format. A Stats API aggregate response is a different format. Simple Analytics' export instructions describe its raw-data export options; choose CSV for this importer.

For Umami, use the supported data export from its data settings or the corresponding website_event.csv. Databuddy uses available pageview, visitor/session, source, location and device fields. Custom events are not imported. Export the intended website's data rather than assuming every row from a multi-site database will transfer.

These imports do not join old visitors to your new identified Databuddy profiles. Start collecting and verifying new custom outcomes using your own event definitions and the identity guide.

Overlap and replacement

Databuddy protects live tracked data by skipping imported events at or after the first live tracked event on the same local date. Earlier events on that date can still be imported. For aggregate exports, reconstructed event times are not the original times, so prefer an export period ending before live tracking begins when you need a clean cutover.

Overlap protection for live tracking is not a promise that overlapping import files are automatically reconciled. Use non-overlapping date ranges when appending history, and inspect the resulting totals before adding another file.

Replace previous import removes earlier imported rows from the same provider in this destination website after the new run finishes. It does not remove live tracked rows. Replacement affects earlier imports from that provider, not just the dates covered by your new file. If you are importing history in several date-range files, do not turn replacement on for each file or the later file can remove the earlier imports you wanted to keep.

If an import stops partway through, some batches may already have been written. Keep the export, provider, date range and error details; do not assume the operation rolled back. Check the destination before starting a new overlapping run. Contact support if you are unsure how to recover without losing earlier imported history.

File limits and troubleshooting

  • Unrecognized file: use the provider's supported export, not a renamed spreadsheet, report screenshot, JSON array or unrelated archive. The preview must identify the provider and show pageviews.
  • No pageviews: confirm the period contains traffic and that the export includes pageview/page-report rows. A custom-event-only export is not a traffic-history import.
  • File too large: the upload limit is 64 MiB, with separate archive-entry and expansion limits. Export smaller periods and append them with replacement off. A single rollup day over 100,000 pageviews or 10,000 rows needs support rather than repeated uploads of the same day.
  • Dates shifted: match the source site's timezone, then compare the same local dates in both tools.
  • Preview totals differ from reports: check live-data overlap, source filters, unsupported fields, and the aggregate reconstruction limits above. A progress row count is not a pageview count because reporting rows can include page exits.
  • New data is missing: historical import does not install the tracker. Verify your first new events separately.

Continue the migration

How is this guide?