← Blog 6 min read

Beyond the Dashboard: What Your Analytics CSV Export Actually Contains

Most analytics tools give you a dashboard. Few let you export the underlying data — and even fewer explain what each export type actually contains. Here's what daily stats, sessions, and events CSVs give you, when to reach for each one, and five practical analyses you can only do with raw session data.

Why the dashboard isn't always enough

A dashboard is great for daily monitoring. You open it, see the numbers, and move on. But the moment you need to answer a question the dashboard wasn't designed to answer — "which referrers bring visitors who actually read more than one page?", "what's our mobile bounce rate specifically from organic search?", "how did traffic from Spain change month-over-month in Q1?" — you hit a ceiling.

The dashboard pre-computes its charts for the most common questions. For anything else, you need the underlying data. That's what a CSV export is for: it gives you the raw material to compute whatever the dashboard didn't anticipate.

Three export types, three levels of detail

Most analytics tools that offer CSV export give you only one level: aggregate totals. Logly gives you three, each suited to a different kind of question.

Daily stats: one row per day

This is the aggregated view — the same numbers the main chart shows, but as a flat file. Each row is one calendar day, and the columns are: date, pageviews, sessions, visitors, avg_duration_s, bounce_rate.

Use this when you want to:

The bounce_rate column is an integer from 0 to 100 — the percentage of sessions where the visitor only viewed one page before leaving. It covers all entry pages, not just the homepage.

Sessions: one row per visit

This is the one most tools don't offer, and it's the most analytically useful. Each row is one completed visit, with columns for: started_at, ended_at, duration_s, pages_visited, entry_page, exit_page, referrer, country, device, browser, and os.

No personal identifiers, no IP addresses. The country is derived from the IP at the moment of the request and then the IP is discarded — so you get geographic signal without any personal data.

Use this when you need to cross-reference dimensions the dashboard doesn't pre-compute — for example, mobile bounce rate broken out by country, or average session duration segmented by referrer.

Events: one row per custom event

If you track custom events with window.logly('event', 'name'), this export gives you the raw log. Each row has: ts (timestamp), name (your event name), country, and device.

Useful for A/B test analysis, conversion funnel debugging, or correlating specific actions with traffic patterns over time.

Five analyses you can only do with session-level data

1. Bounce rate by referrer

Your overall bounce rate might be 60%, but that number is an average of very different traffic sources. Organic search visitors who find exactly what they searched for might bounce at 80% — that's fine, they got their answer. Paid traffic that bounces at 80% is a problem.

With the sessions CSV, a simple pivot in Sheets (group by referrer, average pages_visited = 1) breaks this down in two minutes. The dashboard shows you referrer traffic volume; the session export shows you referrer traffic quality.

2. Mobile vs desktop engagement by country

If you're deciding whether to invest in mobile optimisation for a specific market, you need to know: in that country, what fraction of traffic is mobile, and do those mobile sessions engage differently? The dashboard shows device splits globally and country traffic separately — it doesn't combine them. One SUMIFS in Excel does.

3. Entry page → exit page funnels

Sessions have both an entry_page and an exit_page. A pivot table grouping by entry page and exit page tells you: when people land on /pricing, where do they go next (or where do they leave from)? This is a manual funnel analysis that doesn't require configuring anything upfront — you can run it retroactively on any date range.

4. Time-of-day traffic patterns

The started_at timestamp is ISO 8601 in UTC. Extract the hour with a formula (=HOUR(A2) in Sheets after parsing the timestamp) and you get an hour-of-day distribution. Useful for deciding when to publish content, send newsletters, or run promotions — using your actual audience's behaviour, not generic advice.

5. Long-tail session duration analysis

Average session duration is a useful headline metric, but it hides bimodal distributions: a site might have half its visitors leave in under 10 seconds and the other half spend 5+ minutes. The daily stats export only gives you the mean. The sessions export gives you duration_s per row — you can build a histogram, compute a median, or segment by duration threshold to see what percentage of sessions are genuinely engaged (say, over 60 seconds and more than one page).

Practical setup in Google Sheets

The fastest way to get session data into a spreadsheet:

  1. Open your Logly dashboard, set the date range you want
  2. Click Export ↓ → Sessions in the top-right header
  3. In Google Sheets: File → Import → Upload, select the downloaded CSV
  4. Choose "Comma" as separator, "No conversion" for dates

From there, a pivot table (Insert → Pivot table) with referrer as rows and AVERAGE of pages_visited as values gives you referrer quality in about 30 seconds.

For recurring pulls, the same data is available via the API endpoint (GET /api/sites/:id/export?type=sessions&days=30) — scriptable with a simple curl command and a session cookie, or via the Logly API with an API key.

What the sessions export doesn't contain (and why)

Logly is a privacy-first analytics tool, so the sessions export deliberately omits anything that could identify an individual: no IP addresses, no user IDs, no fingerprint hashes, no email addresses, no persistent visitor identifiers. The country is the most granular geographic data available — there's no city or region.

This isn't a limitation so much as a design choice. The export is structured to give you full analytical power over aggregate traffic patterns without creating a surveillance dataset. You can answer "where do mobile visitors from Spain come from?" — you can't answer "what did this specific person do on my site over the past three months?" That's intentional.

If you need individual-level tracking (user journeys tied to authenticated accounts), that belongs in your product database, not your analytics tool.

A note on row caps

The sessions and events exports are capped at 100,000 rows per download. For most sites this covers months of data. If you have high traffic and need more, use shorter date ranges and concatenate the files, or use the API endpoint to build a scheduled pull that appends daily to a warehouse table — the daily stats export has no meaningful row cap since it's one row per day.

Logly's CSV export is available on all plans. Sign up free and export your first CSV in under a minute.