# Reports

Punchline has the reports you'd expect from any web analytics tool, plus the ones only it has: which visitors are AI agents, and what they do.

Standard reports show **people** by default (including people sent by AI assistants). Switch to **Everyone** or **Agents & crawlers** at the top of each report. Hiding agents is the point: on many sites they're a large share of raw traffic, and they'd skew bounce rates and session lengths.

## The reports

- **Overview:** visitors, sessions, page views, bounce rate, average session and pages per session, against the previous period, then the people/agent split.
- **Realtime:** the last 30 minutes, updated every 30 seconds: who's on the site now, pages, sources, countries and which agents are active.
- **Acquisition:** channels, referring sites and campaigns (`utm_*`), each with engagement and goal conversions.
- **Pages:** every page (views, visitors, time on page, exits), landing pages (with their sessions' bounce rate and length), exit pages, and people vs agents per page.
- **Audience:** countries, device types, browsers and operating systems.
- **Goals & events:** see [Events and goals](https://punchlineanalytics.com/docs/events-goals).
- **Accounts:** which companies' agents and people researched you, for sales. See [Accounts](https://punchlineanalytics.com/docs/accounts).
- **Where agents run** (under AI & agents): agent sessions by where they ran. In someone's own browser, an agent joins that person's visit the same day and often a company; in the cloud, it can only be counted. Also how many agent sessions are connected by each method: same browser and day, a work email's domain, an opened [handoff link](https://punchlineanalytics.com/docs/handoffs), and (later) IP-to-company lookup. Agents in a browser are mostly spotted by the browser snippet's agent signals, so add the snippet next to your edge install to measure this well.
- **Explore:** build your own view. Pick a metric, break it down by any dimension, add filters, and choose a line, area or column chart by day, week or month. Download it as CSV or PNG.

## Saved reports, dashboards and share links

- **Saved reports.** Save any Explore view with a name. Saved reports are private to you by default; choose *Everyone with access* to show one to everyone who can see the site (and to `GET /v1/reports`).
- **Dashboards.** Put up to 24 saved reports on one page and reorder them. A dashboard's date picker applies to every report on it.
- **Share links.** Admins and owners can give any saved report or dashboard of theirs a read-only link that works without signing in. Anyone with the link can see it, so treat it like a password. Shared pages follow the same privacy rules as the API: groups of fewer than 5 people are withheld. Pages aren't indexed by search engines and send no referrer. Turn a link off at any time and it stops working at once; links also stop when the person who made them leaves the site. We store only a hash of each link, so we can't show it to you again; make a new one if you lose it.

## What the numbers mean

| Metric | Definition |
|---|---|
| Visitors | Distinct visitors per day. Without cookies or stored IDs, the same person on two days counts as two. A visitor whose browser sends Global Privacy Control counts once per session. |
| Sessions | Page views from one visitor with gaps under 30 minutes. A session belongs to the day, page and source it started with. |
| Bounce rate | Sessions with a single page view. |
| Avg. session | Time from a session's first page view to its last. A one-page session counts as 0 seconds. |
| Pages / session | Page views divided by sessions. |
| Engaged sessions | Sessions with 2+ page views or 10+ seconds. |
| Time on page | Time until the next page view in the same session, up to 30 minutes. A session's last page has none (like GA's classic time on page). |
| Exits, exit rate | Page views that ended a session, and their share of the page's views. |

## Differences from Google Analytics

- **No new vs returning visitors, and no visitor counts that span days.** These need an ID that persists on the visitor's device; Punchline deliberately has none.
- **Agents are separated, not dropped.** GA4 filters known bots silently; Punchline labels every visitor and lets you choose what to count.
- **Time measures end at the last page view.** Without in-page pings, time on a session's last page isn't measured, so sessions look shorter than GA4's engagement time.

All of these are also in the [API](https://punchlineanalytics.com/docs/api) and to your AI assistant: metrics `visitors`, `bounce_rate`, `avg_session_duration`, `pages_per_session`, `engagement_rate`, `exits`, `exit_rate`, `avg_time_on_page`, dimensions `country`, `device_class`, `browser_family`, `os_family` and `exit_path`.
