Sessions
Online store sessions at row grain — traffic, bounces and the cart → checkout → converted funnel, by device, location, landing page and referrer, as Shopify measures them. Requires the read_reports scope; empty on stores that have not granted it.
54 fields — 34 dimensions, 20 metrics. Date clauses (SINCE, UNTIL, DURING) use day.
The live, authoritative list is always GET /v1/datasets — this page is regenerated from the same catalog, but the endpoint reflects exactly what is deployed.
Query it
FROM sessions
SHOW sessions
GROUP BY referrer_site
SINCE -30d
See Querying with SoloQL for the language.
This dataset is queryable through SoloQL; it has no record-retrieval endpoint.
Fields
| Field | Type | Role | Description |
|---|---|---|---|
sessions | number | metric | Number of online store sessions in the group (document count — one document per session). |
online_store_visitors | number | metric | Unique visitors — one visitor can visit many times. ⚠️ Fetched live from Shopify for the selected window, never stored: a distinct count cannot be re-aggregated, so the range total is SMALLER than the daily figures added together. ⚠️ FRESHER THAN EVERY OTHER COLUMN: it is re-fetched on each render while the rest come from the index as of the last sync, so on a window that includes TODAY it reflects a later moment than the sessions beside it. Available for date ranges, daily trends and groupings, for a single store at a time. |
percent_of_sessions | percent | metric | Share of all sessions in the result that fall into this group. |
pageviews | number | metric | Pages viewed across the sessions in the group. |
pageviews_per_session | number | metric | Average pages viewed per session — total pageviews divided by total sessions. |
bounces | number | metric | Sessions that bounced — viewed a single page and left. Stored per session as 0/1, so it sums cleanly. |
bounce_rate | percent | metric | Share of sessions that bounced — bounced sessions divided by total sessions. |
sessions_with_cart_additions | number | metric | Sessions that added at least one item to the cart. Stored per session as 0/1. |
cart_addition_rate | percent | metric | Share of sessions that added something to the cart — the first stage of the conversion funnel. |
sessions_that_reached_checkout | number | metric | Sessions that reached the checkout. Stored per session as 0/1. |
reached_checkout_rate | percent | metric | Share of sessions that reached the checkout — the second stage of the conversion funnel. |
sessions_that_completed_checkout | number | metric | Sessions that completed the checkout — the converted sessions. Stored per session as 0/1. |
conversion_rate | percent | metric | Share of all sessions that completed the checkout — converted sessions divided by total sessions. |
checkout_conversion_rate | percent | metric | Share of sessions that reached the checkout and then completed it. ⚠️ Can exceed 100% — a session can complete checkout without registering the reached-checkout step. |
sessions_that_reached_and_completed_checkout | number | metric | Sessions in which the checkout page was reached and the purchase was then completed. Lower than completed checkouts wherever a session converted without registering the reached step. |
sessions_that_reached_checkout_closed_funnel | number | metric | Sessions that reached the checkout having taken the earlier steps IN ORDER. ⚠️ Lower than the plain reached-checkout count, which counts a session at that step regardless of what it did before — that difference is why checkout conversion can exceed 100%. |
sessions_that_completed_checkout_closed_funnel | number | metric | Sessions that completed the checkout having taken every earlier step in order. The numerator of Shopify's completed checkout rate. |
completed_checkout_rate | percent | metric | Share of cart-carrying sessions that reached the checkout and then completed it. Narrower than checkout conversion rate, which ignores whether anything was added to the cart. |
conversion_rate_closed_funnel | percent | metric | Share of all sessions that completed the checkout having taken every step in order. Stricter than the plain conversion rate, which counts any session that completed regardless of the path it took. |
average_session_duration | number | metric | Average length of a session, in seconds. |
referrer_site | string | dimension | Site that led to the online store visit. |
referrer_url | string | dimension | External page that led to the online store visit. |
referring_platform | string | dimension | Platform that led to the session. ⚠️ Raw label, not a controlled vocabulary — real data carries mangled values such as 3dkla= alongside clean ones like direct and meta. |
agentic_referring_channel | string | dimension | AI agent or assistant that referred the session, such as ChatGPT. Sparse by nature — most sessions have none. |
utm_source | string | dimension | The utm_source parameter on the link that led to the session, such as google or facebook. ⚠️ Values are whatever the link carried, including malformed ones. |
utm_medium | string | dimension | The utm_medium parameter on the link, such as email, paid or social. |
utm_campaign | string | dimension | The utm_campaign parameter on the link — the campaign name as tagged. |
utm_content | string | dimension | The utm_content parameter — which creative or variant of an ad was used. |
utm_term | string | dimension | The utm_term parameter — the paid-search keyword or ad identifier. |
device_type | string | dimension | Type of device used for the session, such as desktop or mobile. |
browser | string | dimension | Browser used for the session. |
browser_version | string | dimension | Version of the browser used for the session. |
operating_system | string | dimension | Operating system of the device used for the session. |
operating_system_version | string | dimension | Version of the operating system used for the session. |
country | string | dimension | Country the session came from. |
country_code | string | dimension | Two-letter code of the country the session came from. |
region | string | dimension | Region or state the session came from. |
city | string | dimension | City the session came from. |
referrer_source | string | dimension | Referrer type that led to the visit — organic, email and so on. ⚠️ This and the channel/medium fields are the whole of campaign attribution as CURRENTLY STORED; Shopify also exposes utm_source, utm_medium, utm_campaign, utm_content and utm_term on this dataset, which we do not yet fetch. |
referrer_name | string | dimension | Name of the referring source. |
referrer_domain | string | dimension | Domain that referred the session. |
referrer_path | string | dimension | Path on the referring domain that the session came from. |
referrer_terms | string | dimension | Search terms that led to the session, when the referrer supplies them. |
referring_channel | string | dimension | The referrer itself — google, facebook, instagram, klaviyo, chatgpt.com. ⚠️ NOT a channel type: 'social' is never a value here, it lives on referrer_source and referring_medium. Assuming otherwise produced a report that silently returned nothing. |
referring_medium | string | dimension | Category of the referring channel — search, social, email, display, email/sms. ⚠️ Absence reads as the literal string None, not null, so filter accordingly. |
landing_page_path | string | dimension | Path of the first page viewed in the session. |
landing_page_type | string | dimension | Type of the first page viewed in the session, such as product or collection. |
landing_page_url | string | dimension | Full URL of the first page viewed in the session. |
api_client | string | dimension | Surface that served the session, such as the online store or a custom storefront. |
traffic_type | string | dimension | Traffic classification Shopify assigns to the session. |
human_or_bot_session | string | dimension | Whether Shopify classified the session as human or bot traffic. ⚠️ Bot sessions ARE included, here and in Shopify's own reports: their captured Sessions-over-time query filters human_or_bot_session IN ('human', 'bot') — both, explicitly. ⚠️ This is not a rounding error: on 73879978074 over 2026-06-02→08-18 bots were 2,123 of 4,209 sessions (50.4%), and they bounce at 90.5% against humans' 71.7%, so the blended conversion rate of 0.93% is roughly HALF the human rate of 1.77%. Filter to human for what a merchant would call traffic; leave it unfiltered to match Shopify. |
bounced | boolean | dimension | Whether the session bounced. Filter on this; use the bounces metric to count or to build a rate. |
day | date | dimension | The session's day — Shopify's shop-timezone calendar label, stamped as UTC midnight. |
store | string | dimension | The shop the record belongs to. Filter with WHERE store IN ('Shop name') or GROUP BY store. |