# PilotFox documentation

> How PilotFox is organised, what it measures and how its numbers are defined, and the steps from sign-up to your first tracked visit.

PilotFox is web and product analytics at [pilotfox.app](https://pilotfox.app/). A script on your website sends pageviews and events to PilotFox; the dashboard turns them into reports for your team. These pages describe how it works and how to set it up. Every statement here describes the app as it runs at pilotfox.app.

## How PilotFox is organised

- **Organizations** hold sites, members, teams and API keys. Everything you see belongs to one organization; if you belong to several, you switch between them on the Sites page, where you can also create another one (you can own up to five).
- **Sites** are the websites or apps you track. Each has a public id (the `data-site` value of the script tag), a domain, a time zone and its own settings.
- **Members** have one of five roles in the organization. A member can also be limited to some sites, with a role per site.

| Role | What it adds |
| --- | --- |
| Viewer | Reads every report of the sites it can access: traffic, sessions, users, replays, revenue, affiliates and Search Console. |
| Member | Creates and edits goals, funnels, segments and annotations, and edits user traits. |
| Editor | Changes site settings, connects payment providers, links Search Console properties, manages affiliates and share links, imports and exports data, deletes replays and erases a user's data. |
| Admin | Creates and deletes sites, invites and removes members, manages teams and API keys, connects Google accounts and edits the organization. |
| Owner | Deletes the organization. |

Each role includes everything of the roles above it in this table.

## Get started

1. **Create an account.** [Sign up](https://pilotfox.app/signup) with your email address, then open the confirmation link PilotFox emails you; it signs you in. Open it in the browser you signed up in to keep the password you chose: opened on another device or in another browser, it signs you in without a password, and you choose one with *Forgot password* on the [sign-in page](https://pilotfox.app/login). A new account comes with its own organization, and you are its owner. If someone invited you, open the link in their invitation email instead: you sign up (or sign in) there and join their organization, without one of your own. You can [sign in](https://pilotfox.app/login) at any time. Two-factor authentication with an authenticator app is available in your account settings.
2. **Add a site.** An owner or admin opens the Sites page and adds the site with the domain it runs on.
3. **Install the script.** Copy the tag from the site's settings (Tracking code) into the `<head>` of every page. See [Install the tracking script](https://pilotfox.app/docs/install).
4. **Verify.** *Verify installation* loads your site's home page and looks for the tag with your site's id. Then open the dashboard: visits appear as they arrive, in the live view first.
5. **Invite your team.** In Organization settings → Members, an owner or admin invites people by email with one of the roles above, optionally limited to some sites.
6. **Go further.** Send [custom events and identify signed-in users](https://pilotfox.app/docs/events), connect [Stripe, Dodo Payments or Polar for revenue](https://pilotfox.app/docs/revenue), set up [affiliates](https://pilotfox.app/docs/affiliates) and link [Google Search Console](https://pilotfox.app/docs/search-console).

## What PilotFox measures

The tracking script sends one small request per pageview or event. PilotFox works out the visitor and the session on the server, adds location, device and traffic source, and stores the event. Reports are computed from the stored events when you open them, and most reports accept the same filters.

| Metric | Definition |
| --- | --- |
| Sessions | Visits with at least one event other than web vitals. A session ends after 30 minutes without activity. |
| Visitors | Distinct visitors over those sessions. A visitor you identified counts once, across devices. |
| Pageviews | Pageview events. |
| Bounce rate | Sessions with exactly one pageview and no interaction events (custom events, outbound links, clicks, form submits, inputs, copies), out of sessions with a pageview. |
| Visit duration | Time from the first to the last event of a session, for sessions with a pageview. |
| Time on page | Time to the next pageview of the same session, up to 30 minutes; the last page of a session is left out. |

A session's referrer and campaign are the first ones it carries, its channel is the first one other than direct or internal (if it has one), and its entry page is its first pageview. Channels are assigned in this order: campaign mediums and ad click ids (paid search, paid social, display, email, affiliate, other paid), then the referring site (organic search, organic social, video, AI assistants, email, shopping), then your own site (internal); a visit with neither a referrer nor campaign tags is direct, and anything else is a referral.

## Reports

- **Dashboard:** visitors, sessions, pageviews, bounce rate and duration over time, with breakdowns by page, entry and exit page, referrer, channel, campaign, country, region, city, browser, operating system, device, language and more. Filters combine these dimensions, and a period can be compared with the one before it or the same period a year earlier.
- **Live:** visitors active in the last five minutes, with their pages, sources and locations.
- **Sessions and users:** each session's pages and events in order; each user's sessions and traits.
- **Events, goals, funnels, journeys and retention:** see [Custom events and identify](https://pilotfox.app/docs/events).
- **Replays, web vitals and errors:** recorded sessions, Core Web Vitals and JavaScript errors, when turned on in the site's settings.
- **Bots:** what the bot filter kept out of your reports and why, with AI crawlers and assistants by operator.
- **Revenue, affiliates and Search Console:** see their own pages.

## Next

- [Install the tracking script](https://pilotfox.app/docs/install)
- [Custom events and identify](https://pilotfox.app/docs/events)
- [Revenue tracking with Stripe, Dodo Payments or Polar](https://pilotfox.app/docs/revenue)
- [Affiliates](https://pilotfox.app/docs/affiliates)
- [Google Search Console](https://pilotfox.app/docs/search-console)
- [Privacy and data](https://pilotfox.app/docs/privacy)
- [API and MCP](https://pilotfox.app/docs/api)
- [FAQ](https://pilotfox.app/docs/faq)
