See where traffic lands.

Visits, traffic sources, landing pages and top pages on one screen. Trample sets no cookies and keeps no personal data, so most sites don’t need a consent banner for it.

No card needed to start.

Trample's overview for a month: unique visitors, visits, pageviews, bounce rate and visit duration, each with its change from the previous month, above a chart of daily visitors.

What’s on the dashboard

Where visitors came from

Search engines, social sites, newsletters and AI assistants are named for you, and UTM tags are read automatically.

Click any row and the whole dashboard filters to it: the chart, the pages, the countries. Filters stack and live in the URL, so you can send someone exactly what you’re looking at.

The Sources panel: Direct 1,159 visitors, Google 1,081, DuckDuckGo 214, Hacker News 210, a newsletter 204, Reddit 190, X 171, GitHub 170 and ChatGPT 77.

Which pages get read

Time on page and scroll depth for every page, counted only while the tab is visible. A docs page that holds people for two minutes stands out from one they bounce off.

Engagement is added to the pageview, so it never counts toward your plan.

The Pages panel's engagement view: /docs has 927 visitors who spend 2 minutes 18 seconds and scroll 78% of the page; the home page has 2,157 visitors at 41 seconds and 60%.

What people do

Send an event from your page with one call, and add properties if you want them broken down:

trample('Signup', { props: { plan: 'pro' } })

Clicks on outbound links, file downloads and 404s are tracked with no code at all.

The properties of the Signup goal: 61 visitors signed up on the free plan and 29 on the pro plan.
Shared dashboards
Invite your team, or send a read-only link that works without an account.
No cookies, no IP addresses
Visitors are counted with a hash whose salt changes every day, so nobody can be followed from one day to the next.
Ready for AI-built sites
Building with an agent? Point it at trample.dev/agents.md and it has everything it needs to install Trample correctly.

Install

Add one line to your site’s <head>. The script is about 1 KB.

<script defer data-domain="example.com"
  src="https://trample.dev/js/v/1.1.0/trample.js"
  integrity="sha384-2Plzzt711+fa31pn1ge0F8+/XcGWZ5tT3VazSd5LX61aEbATNfaTp85djopR2C4r" crossorigin="anonymous"></script>

Each tracker version has a permanent URL and an integrity hash, so the script on your site can’t change underneath you.

Pricing

You pay for the number of events you record each month. Track as many sites as you like: every plan includes unlimited sites, unlimited team members and every feature.

PlanEvents a monthMonthlyYearly
Starter10,000$9$90
Growth100,000$19$190
Business1,000,000$69$690

Start a 30-day free trial No card needed. Pick a plan when the trial ends.

An event is a pageview or a custom event, such as a sign-up, an outbound link click or a file download. Time on page and scroll depth are free. Paying yearly gets you two months free. If you go over your plan for a month, we keep recording up to twice the limit while you decide.

Self-host for free

Trample is open source (AGPL-3.0). Run the same app on your own server, with your data in your own Postgres database. Every feature is included and there are no limits.

cp .env.example .env    # set passwords and your address
docker compose up -d

The first person to sign in becomes the admin. Sign-in uses email links and passkeys, with no passwords to manage.