Reports & Exports

Clickport lets you export your analytics data as PDF reports or CSV files. Both export options are available from the Filter modal, and they respect any active filters and date range you have set. You can also save filter combinations as named segments for quick reuse.

Accessing reports

The Filter modal is the central hub for both filtering and exporting. To open it, click the layers icon in the dashboard header (next to the date picker). The icon turns blue when filters are active, and a badge shows the number of applied filters.

At the bottom of the Filter modal, you will find four action buttons:

  • Save as segment: Save the current filter combination with a name for later reuse.
  • Your segments: Browse and load previously saved segments.
  • Export PDF: Generate a multi-page landscape PDF report.
  • Export CSV: Download all dashboard data as a ZIP archive of CSV files.

Filters

Filters narrow your analytics data by specific dimensions. When you apply a filter, it affects the entire dashboard: KPIs, chart, and all panels update to show only matching data. Filters are also reflected in the URL, so you can bookmark or share filtered views.

Available dimensions

You can filter on 23 dimensions, organised into four categories in the picker:

  • URL: Page, Entry page, Exit page, Outbound link
  • Acquisition: Channel, Source, Campaign, UTM source, UTM medium, UTM campaign, UTM content, UTM term, Referrer URL
  • Location: Continent, Country, Region, City
  • Device: Browser, Browser version, OS, OS version, Device, Screen

UTM tags and Location appear as collapsed compounds in the picker. Click the compound to expand it inline and pick a specific sub-dimension.

Operators

Each filter supports four matching operators:

  • is: Exact match (case-sensitive for URL paths and exact values). Select one or more values from the dropdown.
  • is not: Exclude exact matches. The value chip turns red to indicate exclusion.
  • contains: Partial text match (case-insensitive: type "blog" and match /Blog or /BLOG too). Type a substring or pick from the dropdown.
  • does not contain: Exclude partial matches. Also shown with a red chip, and case-insensitive.

Combining filters

You can stack filters in two ways:

  • Multiple values within one dimension (OR): Add several values to the same filter and they combine with OR. Page is /a, /b matches sessions on either page. Country is DE, AT, CH matches DACH countries.
  • Multiple dimensions (AND): Each separate filter narrows further. Country is DE + Device is Mobile shows only mobile visitors from Germany.

You can edit any active filter inline: change the operator, add or remove value chips, or remove the entire row with the × button. Changes apply immediately. Click Apply filter or close the modal when you are done.

Filter Define conditions to narrow your data
×
URL
Page1
Entry page
Exit page
Outbound link
Acquisition
Channel
Source
Campaign
▸ UTM tags
Referrer URL
Location
▸ Location2
Device
Browser
OS
Device
Active filters
Page contains blog × ×
Country is GB × US × ×
Source is not Google × ×
+ Save as segment Clear all Apply filter

Saved segments
UK paid traffic(3) ×
Mobile blog readers(2) ×

Saved segments

Segments let you save a set of filter conditions under a custom name so you can reapply them later with one click. Segments are stored per site on the server and synced to your account, so they appear on every device you log in from.

Saving a segment

  1. Apply one or more filters in the Filter modal.
  2. Click + Save as segment below the active filter list.
  3. Type a name (for example, "German mobile users" or "Newsletter traffic").
  4. Click Save to save.

Segment names must be unique within a site. If you try to save a name that already exists, you will be prompted to choose a different one.

Loading a segment

Saved segments appear at the bottom of the Filter modal. Click any segment to load its filter conditions into the editor. The segment overwrites whatever filters were previously active. The modal stays open so you can review or tweak the loaded filters before they are applied.

Deleting a segment

Click the × next to any saved segment to remove it. This only deletes the saved segment definition, not the underlying data. Deletion is also synced to the server, so the segment is removed on every device.

Migration note: Segments saved before May 2026 were stored in browser local storage. They are migrated to your server account automatically the first time you open the Filter modal after the update. After migration, your browser local copies are cleared.

PDF export

The PDF report is a multi-page landscape A4 document generated client-side using jsPDF and html2canvas. It includes your current KPIs, chart, top sources, top pages, geographic breakdown, and technology breakdown. Any active filters and the selected date range are reflected in the report.

Report layout

The PDF report contains up to three pages:

Page 1: KPIs and chart. The top shows the report header with the site name, date range label, and active filter badges. Below that, eight KPI cards display the key metrics with comparison percentages. The bottom half shows the time-series chart with all currently active metric lines.

PDF Report, Page 1
Analytics Report
Last 28 Days
14.01.2026 - 12.02.2026
Visitors
4,218
↗ 12.3% vs prev
Pageviews
11,492
↗ 8.1% vs prev
Conversions
86
↗ 22.9% vs prev
Conv. Rate
2.0%
↗ 9.4% vs prev
Avg. Duration
2:34
↗ 5.7% vs prev
Bounce Rate
42%
↘ 3.2% vs prev
Views/Visit
2.72
↗ 1.8% vs prev
Avg. Scroll
64%
↗ 4.1% vs prev
Visitors Over Time

Page 2: Traffic sources and top pages. Two side-by-side columns show horizontal bar charts. The left column lists your top 15 traffic sources with visitor counts. The right column shows your top 15 pages by visitor count.

PDF Report, Page 2
Traffic Sources & Top Pages
Top Sources Visitors
Google 1,842
Direct 926
Twitter 412
Reddit 287
Newsletter 193
Top Pages Visitors
/ 2,104
/pricing 891
/blog/complete-guide 647
/features 523
/docs 318

Page 3: Geographic and technology breakdown. The left column shows your top 15 countries with flag emojis and visitor counts. The right column breaks down technology into three sections: Devices (top 3), Operating Systems (top 6), and Browsers (top 6).

PDF Report, Page 3
Geographic & Technology Breakdown
Top Countries Visitors
🇩🇪Germany
1,247
🇺🇸United States
986
🇬🇧United Kingdom
521
🇦🇹Austria
318
Technology
Devices
Desktop2,891
Mobile1,104
Tablet223
Operating Systems
Windows1,642
macOS1,089
iOS842
Browsers
Chrome2,156
Safari1,247
Firefox489

KPI cards in the PDF

The eight KPI cards included in the report are:

  • Visitors: Unique visitors in the period.
  • Pageviews: Total page views.
  • Conversions: Goal completions.
  • Conv. Rate: Conversion rate as a percentage.
  • Avg. Duration: Average session duration formatted as M:SS.
  • Bounce Rate: Percentage of bounced sessions (inverted comparison arrow, so a decrease shows green).
  • Views/Visit: Average pageviews per session.
  • Avg. Scroll: Average maximum scroll depth.

Each card includes a comparison percentage against the previous period, matching the dashboard's weekday-aware comparison system. For details on how comparisons work, see the KPIs documentation.

Chart metrics in the PDF

The chart in the report reflects whichever metrics you have toggled on in the dashboard at the time of export. If you have Visitors and Pageviews enabled, the PDF chart will show both lines. Duration uses a dashed line on a secondary axis (seconds), while percentage metrics like Bounce Rate and Scroll use a 0-100% right axis.

How it works

When you click Export PDF, the dashboard first loads all panel data (even panels you have not opened yet). It then renders the three report pages as off-screen HTML, captures each page as a canvas using html2canvas, and assembles them into a landscape A4 PDF using jsPDF. The libraries are dynamically imported only when needed, keeping the main dashboard bundle small.

Pages 2 and 3 are conditionally included. If your filters result in no sources or pages data, page 2 is skipped. If there is no geographic or technology data, page 3 is skipped.

Filters in the PDF

Active filters appear as badges in the PDF header, just below the report title. The data in all tables (sources, pages, countries, technology) is also filtered to match your active dashboard filters.

Filename

The PDF file is named analytics-report-YYYY-MM-DD.pdf using the current date.

CSV export

The CSV export downloads a ZIP archive containing individual CSV files organized into subfolders. Like the PDF, it first loads all dashboard data, then generates the files client-side using JSZip (also dynamically imported).

ZIP structure

The archive is organized as follows:

Clickport export last 28 days.zip
├── traffic/
│   └── visitors.csv
├── pages/
│   ├── pages.csv
│   ├── entry_pages.csv
│   ├── exit_pages.csv
│   └── error_pages.csv
├── sources/
│   ├── sources.csv
│   ├── channels.csv
│   └── referrers.csv
├── geography/
│   ├── countries.csv
│   ├── regions.csv
│   └── cities.csv
├── technology/
│   ├── devices.csv
│   ├── browsers.csv
│   ├── operating_systems.csv
│   └── screens.csv
├── campaigns/
│   ├── campaigns.csv
│   ├── utm_sources.csv
│   ├── utm_mediums.csv
│   ├── utm_content.csv
│   └── utm_terms.csv
├── goals/
│   └── goals.csv
└── sessions/
    └── sessions.csv

CSV file contents

Each CSV contains raw numeric values (no formatting). Here are the key files and their columns:

  • visitors.csv: date, visitors, pageviews, bounce_rate, avg_duration_sec, avg_scroll_pct, clickers
  • pages.csv: path, visitors, pageviews, bounce_rate, avg_duration_sec, avg_scroll_pct, clickers
  • sources.csv: source, visitors, pageviews, bounce_rate, avg_duration_sec, avg_scroll_pct, clickers
  • countries.csv: code, name, visitors
  • sessions.csv: session_id, first_seen, duration_sec, pageviews, bounce, clicked, max_scroll_pct, entry_page
  • goals.csv: goal, type, completions, visitors, conversion_rate_pct

Duration is always in seconds. Dates use ISO 8601 format (YYYY-MM-DD for daily, HH:00 for hourly). Session timestamps include the time component (YYYY-MM-DDTHH:MM:SS).

Security

CSV values are escaped to prevent formula injection in spreadsheet applications. Values beginning with =, +, -, or @ are quoted and prefixed with a single quote to prevent accidental execution when opened in Excel or Google Sheets.

Filename

The ZIP filename includes the date range for context: Clickport export last 28 days.zip, Clickport export today.zip, or Clickport export 2026-01-15 to 2026-02-12.zip.

Large exports: Both PDF and CSV exports load all dashboard data before generating the file. For sites with large datasets over long date ranges, the export may take several seconds. The button text changes to "Exporting..." while the process is running.

Cross-filtering

Filters are not limited to the reports workflow. They are the core cross-filtering mechanism for the entire dashboard. When you apply a filter, every API query sent by the dashboard includes that filter parameter, so KPIs, the chart, and all panels update consistently.

Filters are persisted in the URL as query parameters (for example, ?filter_country=DE&filter_device=Mobile). Multi-value filters are pipe-delimited: ?filter_page=/blog/a|/blog/b for "Page is /blog/a or /blog/b". This means you can bookmark a filtered view, share it with team members, or paste a multi-value deep link into a Slack message and the recipient sees exactly the same scoped data.

You can also apply filters by clicking values in dashboard panels. For example, clicking "Google" in the Sources panel adds a Source is Google filter. Clicking another row in the same panel (say, "Bing") merges into the existing filter as a multi-value Source is Google, Bing instead of adding a duplicate row. The filter badge bar below the header shows all active filters with × buttons to remove individual ones.