Migrating from Plausible
Antlytics cannot import historical data from Plausible — Plausible does not export individual event records in a format that can be imported into another tool. This guide explains how to run both tools in parallel, verify Antlytics is working, and remove Plausible when you are ready.
Recommended approach: run both tools in parallel for two to four weeks. Both scripts are lightweight (under 10 KB each), and the combined overhead is negligible.
What you will lose
- Historical data stays in Plausible. Antlytics starts from zero on install day.
- Custom events. If you have configured custom events in Plausible using
plausible('event-name'), you will need to recreate equivalent tracking in Antlytics. Antlytics goal tracking is currently path-based; custom event types are on the roadmap. - Funnels and revenue attribution (Plausible cloud). These are Plausible-specific features with no direct equivalent in Antlytics at this stage.
Export any reports or CSV data you want to retain before fully removing Plausible.
Step 1 — Install Antlytics
Plausible uses a single <script> tag loaded from plausible.io (or your self-hosted domain). You will replace this with an Antlytics script tag or framework component.
Option A: CLI (recommended)
npx @antlytics/init
The CLI detects your framework and installs the correct component automatically.
Option B: Script tag (any site)
Add the Antlytics script alongside your existing Plausible script initially. Both will collect data in parallel:
<!-- Existing Plausible script — leave in place during transition -->
<script defer data-domain="yourdomain.com" src="https://plausible.io/js/script.js"></script>
<!-- New Antlytics script -->
<script
defer
data-tracking-id="your-tracking-id"
src="https://cdn.antlytics.com/tracker.js"
></script>
Option C: Next.js
npm install @antlytics/analytics
In app/layout.tsx:
import { Analytics } from '@antlytics/analytics/next'
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html>
<body>
{children}
<Analytics trackingId="your-tracking-id" />
</body>
</html>
)
}
Step 2 — Run both tools in parallel
Leave Plausible in place while you verify Antlytics. Use the parallel period to:
- Confirm traffic numbers are in the expected range (10–20% variance between tools is normal due to different bot filtering and session counting methods)
- Check that top pages and referrer patterns match what you see in Plausible
- Recreate any important goals in Antlytics
Step 3 — Recreate goals
If you use Plausible's goal tracking, recreate your page-visit goals in Antlytics before removing Plausible.
Via the MCP server:
Create a goal called "Contact form" for visits to /contact/success on my site.
Via the dashboard:
Go to Settings → Goals → Add goal. Enter a name and the exact path you want to track.
Step 4 — Remove Plausible
When you are satisfied with the Antlytics install:
Self-hosted Plausible:
Remove the <script> tag that loads from your self-hosted Plausible domain. If you added it directly to your layout, remove that line. If it was added via a CMS or plugin, remove it there.
Plausible Cloud:
Remove the <script> tag that loads from plausible.io. If you installed via a WordPress plugin or other integration, remove that plugin/integration.
After removing the script, check your page source to confirm no requests to plausible.io or your self-hosted domain appear in the network tab.
Step 5 — (Optional) Decommission self-hosted infrastructure
If you were self-hosting Plausible on a VPS, cloud VM, or container platform, you can decommission that infrastructure once you have confirmed the migration is complete and you no longer need access to the historical data in the Plausible UI.
Before decommissioning:
- Export any aggregate reports or CSV data you want to retain
- Note your top pages, referrers, and UTM sources for the past 12 months as a reference
Verifying the migration is complete
After removing Plausible, confirm:
- No requests to
plausible.io(or your self-hosted domain) in the browser network tab - Antlytics dashboard showing expected traffic levels
If you have the MCP server configured:
Check that my Antlytics install is receiving data.
Common issues
Numbers are lower than Plausible reported. Both tools filter known bots, but with different filter sets. Antlytics may report slightly different numbers. Check the troubleshooting guide if the variance is larger than 20%.
The script is not loading on some pages. Check that the tracking script or component is included in a layout that wraps all pages, not a single page file. See the quick-start guide for layout placement.
Self-hosted Plausible was handling bot filtering I relied on. Antlytics applies bot filtering at the ingest layer. If you need to add custom shield rules (blocking specific IPs, referrers, or countries), use the shield rules feature or configure them via the MCP server.