To connect to AgencyAnalytics, the user needs access to the Orders + Customers + Products options in the Shopify store.
Connect Shopify
Before connecting Shopify, a few requirements must be met. If the conditions aren't met, you may encounter a validation error or another connection issue.
The user connecting Shopify must:
Be logged into the AgencyAnalytics account prior to making the connection
Be logged into the Shopify app store as the Store you'd like to connect
If you meet the above criteria, please visit the Shopify App Store listing to connect with your Shopify store.
In the upper right of the app store page, click Add app. Doing so will redirect you to the Installation page.
As a note, on larger screens, the Add app button may appear to the left, below the AgencyAnalytics header instead.
The Installation page will show in-depth privacy details and a confirmation to install. Next, click the Install app button in the upper right. This will load momentarily, then redirect you to AgencyAnalytics.
From the dropdown, select the Client where you'd like to connect Shopify, then click Connect to finish integrating.
Depending on the amount of data in your Shopify account and the load on Shopify's API, it can take more than 6 days to fully sync your account data.
Reconnecting Shopify will clear your previous results and restart the data sync, resulting in another 6+ day delay while data loads.
If you're experiencing data discrepancies, the best course of action is to wait for the full sync to finish, as most discrepancies will resolve once all Shopify data is loaded.
It can take upwards of 6 days for Shopify to deliver all of your data; this timeline depends on Shopify's API response and the amount of data in your account.
Shopify Filters
Understanding the various filters for sales and orders is essential for accurate analysis. Let's shed light on each filter:
Channels Filter: This filter lets you narrow data by order or sales source. You can select specific channels or leave it on the default "All."
Include Adjustments: This filter determines whether to include adjustment-related data. At the order level, it includes high-level adjustment details, while at the sale level, it breaks down adjustments further.
Include External Events: This filter includes orders/sales linked to events outside the date range, relevant because of associated events within the range.
Include Refunds: Decide whether to include refund-related data. At the order level, it summarizes refund information, while at the sale level, it details various refund types.
Include Voided Orders: Similar to refunds, this filter involves voided order-related data.
Record Keeping: This filter alters date-filtering methodology and context. Choose from preset options or a custom "By Date Filter."
Record Keeping Date Filter: Applicable when using the "By Date Filter" option, it specifies the column to be used in conjunction with the record keeping filter.
Use Adjusted Totals: This impacts calculation results. "Yes" offers current adjusted values, while "No" preserves original values, excluding adjustments.
Navigating Date Context filter (For Recording Keeping)
The "Record Keeping" filter's context depends on the chosen option:
By Order Date: Filters based on original order date and includes edits, adjustments, and refunds for orders in the range.
By Refund Date: Similar to order date, includes refunds occurring during the period.
By Adjustment Date: Incorporates adjustments to orders within the date range.
By Event Date: Filters by event date, encompassing orders, refunds, adjustments, and other events.
By Date Filter: Isolates specific events using a designated date column without extra conditions.
Shopify Metrics Overview & Tooltips:
The following is a list of the metrics & analytics supported by the Shopify integration, along with their definitions.
Order Summary & Counts
These are affected by filter settings and have variations.
Date - Date associated with analytics (based on filter)
Channel - Channel associated with the order
Referrer - Referral source associated with the order
Total Orders - Number of total Shopify orders (including voided, authorized, paid, refunded)
Refunded Orders - Number of Shopify orders less the number of refunded orders (excluding external refunds)
Voided Orders - Number of Shopify orders voided
Net Orders - Number of Shopify orders less the number of refunded & voided orders (excluding external refunds)
Adjusted Orders - Number of Shopify orders manually adjusted in price
Edited Orders - Number of Shopify orders edited
Average Order Value - Average value of unadjusted Shopify orders
Refunds - Number of total Shopify refunds processed (includes partial and full refunds)
Refunds (External) - Number of Shopify refunds processed that came from orders outside of the selected date range (includes partial and full refunds)
Refunds (Internal) - Number of Shopify refunds processed that came from orders inside the selected date range (includes partial and full refunds)
Core Metrics
These are affected by filter settings and have variations.
Gross Sales - Sum of Shopify gross sales before discounts, excluding refunds
Order Discounts - Sum of Shopify order-level discounts applied
Total Discounts - The total discounts on Shopify orders
Subtotal Sales - Sum of Shopify subtotal sales before taxes (Gross sales + Discounts)
Net Sales - Sum of Shopify net sales before taxes (Gross sales + Discounts + Refunds)
Total Taxes - Sum of Shopify taxes charged
Gross Sales (Including Tax) - Sum of Shopify gross sales before discounts, excluding refunds (Taxes included)
Subtotal Sales (Including Tax) - Sum of Shopify subtotal sales including taxes (Gross sales + Discounts + Taxes)
Net Sales (Including Tax) - Sum of Shopify net sales including taxes (Gross sales + Discounts + Refunds + Taxes)
Shipping Charges - Sum of Shopify shipping charges before discounts and refunds
Shipping Discounts - Sum of Shopify shipping discounts applied
Total Shipping - Sum of Shopify shipping charges excluding refunds (Shipping Charges + Shipping Discounts)
Total Duties - Sum of Shopify duties applied, excluding returns
Total Sales - Sum of Shopify total sales (Gross sales + Discounts + Shipping + Taxes
+ Duties)
Additional Fees - The sum of additional fees on Shopify orders
Original Sales - Sum of Shopify original sales at time of order
Original Duties - Sum of Shopify original duties applied at time of order
Original Shipping - Sum of Shopify original shipping charges at time of order
Total Refunds - The total refunded sales amount on Shopify orders from both external and internal refunds
Refunded Sales (External) - The total external refund amount which occurred from Shopify orders that are outside of the selected date range
Refunded Sales (Internal) - The total internal refund amount which occurred from Shopify orders which are inside of the selected date range
Voided Sales - The adjustments made due to Shopify orders being voided
Manual Sales Adjustments - Sum of Shopify charges manually adjusted
Total Sales Adjustments - The total adjustments, refunds and voided sales made on Shopify orders
Tax Adjustments - Sum of Shopify taxes refunded and/or adjusted
Shipping Adjustments - Sum of Shopify shipping charges refunded and/or adjusted
Duty Adjustments - Sum of Shopify duty charges refunded and/or adjusted (excludes external refunds)
Discount Adjustments - Sum of Shopify discounts refunded and/or adjusted (excludes external refunds)
Subtotal Adjustments - Sum of adjustments to subtotals (includes external refunds)
Net Adjustments - Sum of adjustments to net sales (includes external refunds)
Attributes (Order Table)
Date Created - Date that the order was created in Shopify
Date Processed - Date that the order was processed by Shopify, this can be different from the creation date
Date Updated - Date that the order was last modified
Date Refunded - Date that the refund was processed by Shopify, this can be different from the creation date
Date Cancelled - Date that the order was cancelled in Shopify
Customer - Customer name associated with the order
Referrer - Referral source associated with the order
Channel - Channel associated with the order
Order ID - Unique ID associated with the order and or associated refunds and adjustments
Payment Status - Display status of the order payment (may not reflect all states of a transaction)
Taxes Included? - Whether or not the taxes were included within the original purchase price
Transaction Type - Type of the order line transaction
First-Time Customer? - Whether or not the customer is a first time buyer
Order Edited - Whether or not the order has been edited since it was created
External Refund? - Whether or not the refund came from an order beyond the selected date range
Manually Adjusted? - Whether or not the order was manually adjusted
Shopify FAQ
How far back does Shopify historical data go?
Shopify uses data warehousing, which retains up to 730 days (2 years) of historical data.
Do we pull data in real-time?
Data updates periodically (about twice daily) rather than in real time.
What is the difference between the Shopify Orders & Sales asset types?
Shopify has a lot of different reports and ways to review analytics and they are Plan-Specific and not always available for all Shopify users. Order reports offer a high-level view, while Sales reports offer a more intricate view. It is important to note that these two types of reports can sometimes yield different results when compared across different dates. The root of this variance lies in the interpretation of the event date.
Does the AgencyAnalytics timezone setting need to match the store's timezone?
Yes, mismatched time zones can cause data discrepancies. Once the change has been made within the Shopify integration to match the native store's timezone settings in Shopify, then it should immediately take effect for the existing datasets.
Where can I see the latest sync date/time, to ensure that my Shopify data has been updated within the past 24 hours?
Look for the clock icon with an arrow around it displayed to the left of the date range selector within the Shopify integration. This displays an approximate number of hours since the last sync. You can hover over this indicator to view a tooltip that states the last date and time Shopify data was synced for your Client.
Why don't my Shopify sales and refunds match what I see in my Shopify account?
Refunds can cause discrepancies in the Total Sales metric because Shopify displays refunds differently on its native platform than it feeds this data to our platform via API.
Here's an example:
In the native Shopify platform, refunds are applied to the order date. If the order was made on January 15th but refunded on March 15th, the refund will apply to January 15th on the Shopify dashboard
When Shopify sends data via its API, refunds are applied on the date on which they are given. So, if an order were placed on Jan 15 and refunded on Mar 15, the refund would be shown as March 15th in AgencyAnalytics
Since Shopify doesn't consistently match refund dates between their platform and the API, we won't be able to exactly match what you see on their native platform until Shopify updates their API.
Why am I seeing discrepancies with my 'Total Returns' vs 'Total Sales' metrics?
Small discrepancies can exist between these metrics due to a known limitation in how refunds are applied within the Shopify API, which AgencyAnalytics uses, compared to Shopify's native platform data.
Why am I seeing discrepancies with my 'Order Count or 'Orders Total' metrics?
Shopify enables its users to alter orders after they've been placed, like changing an item or adding/removing an item from an order. If an order is edited after the day it was placed, the edited order will appear as a separate order in multiple Shopify native reports. This can lead to data discrepancies, as the Shopify integration may display a different order count or order total depending on when and how the orders were edited, since Shopify sometimes displays information differently to 3rd parties via its API than in its native platform UI.
To match the way Shopify organizes data on its native platform, apply these two filters when setting up your Shopify widgets:
Record Keeping: Set to "By Order Date". This organizes data by the date the order was placed, matching Shopify's native behavior
Record Keeping Date Filter: Set to "Date Ordered". This filters data based on the date the orders were placed, rather than when they were processed or created via the API
How are gift card purchases treated?
We treat gift card sales as part of total sales; however, in some parts of Shopify, they are not tracked and are excluded. At this time, we do not exclude gift cards from the datasets we pull.
Why am I seeing "Error code 400: Could not authorize callback" when connecting Shopify?
This error usually means you weren't logged into AgencyAnalytics when you attempted to connect from the Shopify App Store. Before connecting, make sure you:
are logged into your AgencyAnalytics account
are logged into the Shopify App Store as the store you want to connect
Once you're logged into both, try the connection again.
💬 Need additional help?
If you have any questions, please contact our friendly support team by following these instructions! We're available 24/5 to help 😄




