I am working on custom analytics and reporting for our Shopify store and need clarity on how to fetch storefront behavior metrics such as:
using Shopify GraphQL APIs.
Current Understanding
-
We are already consuming data via Admin GraphQL API and Shopify Analytics dashboards.
-
However, we are unable to identify a GraphQL endpoint or schema that exposes session-level or funnel metrics (similar to what is visible in Shopify Analytics or Live View).
Specific Questions
-
Is there any GraphQL API (Admin or otherwise) that provides:
-
If not available directly via GraphQL:
-
What is the recommended approach to fetch these metrics programmatically?
-
Should we rely on ShopifyQL, Reports API, or Web Pixels / Customer Events?
-
Are there any rate limits, permissions, or plan-level restrictions for accessing these analytics data points?
-
Is there an official roadmap or documentation reference for exposing these metrics via GraphQL in the future?
Use Case
We need these metrics for:
Any guidance, documentation links, or best practices would be highly appreciated.
Thank you for your support.
Best regards,
Manish Rustagi
Shopify’s Admin GraphQL API is not designed to return aggregated “live” sessions or funnel behavior directly. Those metrics are calculated abstractions rather than simple database records.
Heyy @Manish1974!
At the moment, Shopify does not expose sessions or Add to Cart conversion metrics via the GraphQL Admin API. Those metrics are available in the Shopify Admin analytics UI, but they aren’t retrievable programmatically through GraphQL.
What you can do instead:
- Use Google Analytics (GA4) or another analytics tool to track sessions, add-to-cart events, and conversion rates via their APIs.
- Pull orders, line items, and checkout data from Shopify’s API and calculate partial conversion metrics on your own.
- For storefront behavior, rely on client-side tracking (pixels or events) rather than the Admin API.
Hi Manish,
You are correct in your assessment, as far as I know Shopify does not expose session-level or funnel metrics (sessions, add-to-cart, checkout started, conversion rate) directly via the Admin GraphQL API. These metrics are derived analytics, not first-class transactional entities.
I would like to suggest to look at our tracking & reporting solution - it may be a possible way for you to gain programmatic access to daily product - level analytics for your stores.
How Datma approaches this
Datma tracks and exposes analytics by combining event-level data ingestion with derived reporting, rather than relying on Shopify’s aggregated analytics endpoints.
At a high level:
-
Event ingestion
-
We consume Shopify Web Pixels / Customer Events (page views, add_to_cart, checkout_started, etc.) where available.
-
These events are stored at the raw, timestamped level.
-
Transactional data
- Orders, checkouts, line items, fulfillments, etc. are ingested via the Admin API (GraphQL / REST where applicable).
-
Metric derivation
-
Funnel metrics (sessions, add-to-cart rate, checkout initiation, conversion) are computed downstream from raw events + order data.
-
This mirrors how Shopify Analytics works internally, but gives us full control and consistency for BI and automation.
-
Reports API
-
Datma exposes a simple Reports API ( doc here ) that returns pre-aggregated, queryable metrics (daily sessions, conversion rates, product funnels, etc.) without requiring clients to re-implement attribution or funnel logic.
-
This API is designed for BI dashboards, scheduled exports, and automated reporting.
Let me know what you think or if you have any questions.
Peter - Datma ( view a demo: https://demo.datma.io/shopify/reporting/metrics/All_Products )