Magento 2 missing orders or transactions in Google Analytics (GA)
Last updated
Was this helpful?
Last updated
Was this helpful?
Table of Contents
Installation via app/code
Installation via Composer
General Settings
GA4
Select Store View
GA4 Sync Log grid
GA4 Sync Log File
Google Analytics 4 Real Time Reports
Google Analytics 4 Custom Reports
Installation via app/code: Upload the content of the module to your root folder. This will not overwrite the existing Magento folder or files, only the new contents will be added. After the successful upload of the package, run below commands on Magento 2 root directory.
Installation via Composer: Please follow the guide provided in the below link to complete the installation via composer.
Go to Admin > Stores > Configuration > Scommerce Configuration > Google Analytics Synchronization
Enabled – Select “Yes” or “No” to enable or disable the module.
Enabled – Select “Yes” or “No” to enable or disable synchronization with UA(Universal Analytics).
Google View id – View Id can be obtained from Google Analytics. Go to Admin>View Settings>View ID.
Exclude order statuses – You can choose to exclude certain order statues from sync. These orders won’t be synced with Google Analytics.
Orders day Skip – Enter the number of days you want to skip checking. For eg:- Suppose if you enter 2 then orders from 2days ago will be synced today.
Skip Hours- This setting works in conjunction with Order days skip" setting. When Order days skip is set to 0 then you can add hours here to allow number of hours to skip before considering transaction has been missing and sending it to GA. Default value is 4 and we will recommend to keep it that way because original transaction can take longer to appear in Google Analytics.
Send Base Data – Select whether you want to send base order data or store order data.
Send Phone or Admin Orders – Enabling this option will also sync orders placed from admin panel and phone
Source – Pass a source to Google for admin orders
Medium – Pass a medium to Google for admin orders
Brand Attribute – Select a brand attribute to send with brand names
Brand Text box – Input brand name to send to Google
Default Landing Page - This setting allows you to set default landing page value which shows in Google Analytics in case landing page is not available to sent as part of missing transaction.
Cron Schedule – Schedule specific cron time to run the sync automatically.
Debugging – Enabling debugging will generate a detailed log report in /var/log directory
Test Mode- This setting allows you to check missing transactions before we send the transactions to GA. It helps in validating the data before it gets posted to Google Analytics
Synch GA4 – Select “Yes” or “No” to enable or disable the GA4 sync.
API Secret – Enter the API secret key here. API secret key can be created by going into GA4>Admin>Data Streams>Select website>Measurement Protocol API Secrets>Create enter the name and click on create to get the key.
Skip Order days – Enter the number of days that will be skipped before sending to GA4. Please put greater than 0 value. This is done to avoid duplicate transactions. For eg:- Suppose if you enter 2 then orders from 2days ago will be synced today.
Measurement ID – Enter the measurement ID of your GA4 property. Ga4 measurement ID can be extracted from GA4>Admin>Data Streams>Select website and it is available in the top right corner.
Property ID – Enter the property ID of GA4. GA4>Admin>Property Settings>Property ID
Select Store View
Enabled – Select “Yes” or “No” to enable or disable the module.
Enabled – Select “Yes” or “No” to enable or disable synchronization with UA(Universal Analytics).
Google View id – View Id can be obtained from Google Analytics. Go to Admin>View Settings>View ID.
Exclude order statuses – You can choose to exclude certain order statues from sync. These orders won’t be synced with Google Analytics.
Analytics Account Id – It is your Google Analytics account ID.
Orders day Skip – Enter the number of days you want to skip checking. For eg:- Suppose if you enter 2 then orders from 2 days ago will be synced today.
Skip Hours- This setting works in conjunction with Order days skip" setting. When Order days skip is set to 0 then you can add hours here to allow number of hours to skip before considering transaction has been missing and sending it to GA. Default value is 4 and we will recommend to keep it that way because original transaction can take longer to appear in Google Analytics.
Send Base Data – Select whether you want to send base order data or store order data.
Send Phone or Admin Orders – Enabling this option will also sync orders placed from admin panel and phone
Source – Pass a source to Google for admin orders
Medium – Pass a medium to Google for admin orders
Brand Attribute – Select a brand attribute to send with brand names
Brand Text box – Input brand name to send to Google
Default Landing Page - This setting allows you to set default landing page value which shows in Google Analytics in case landing page is not available to sent as part of missing transaction.
GA4
Synch GA4 – Select “Yes” or “No” to enable or disable the GA4 sync.
API Secret – Enter the API secret key here. API secret key can be created by going into GA4>Admin>Data Streams>Select website>Measurement Protocol API Secrets>Create enter the name and click on create to get the key.
Skip Order days – Enter the number of days that will be skipped before sending to GA4. Please put greater than 0 value. This is done to avoid duplicate transactions. For eg:- Suppose if you enter 2 then orders from 2days ago will be synced today.
Measurement ID – Enter the measurement ID of your GA4 property. Ga4 measurement ID can be extracted from GA4>Admin>Data Streams>Select website and it is available in the top right corner.
Property ID – Enter the property ID of GA4. GA4>Admin>Property Settings>Property ID
The synced transactions can be verified in two ways. Either checking the GA Sync logs or by checking the Real time reports in GA4 (as it takes 24 to48 hrs for GA4 to attribute data to reports realtime is the quickest way to verify).
GA Sync Log Grid: Go to System> Manage GA Sync Logs> GA Sync Logs
After clicking on "GA Sync Logs", user would see the generated logs in the Sync Log Grid.
User can also use filters to check a particular log in the grid.
GA4 Sync Log File: The GA Sync logs can be viewed by going into your server>Magento installation directory>Var>log>ga_sync.log.
After downloading/viewing the file, user can check the logs. This file contains details of each synced transaction alongwith the order data that was sent, please refer to the image below:-
Go to your Google Analytics 4 Property then from left menu click on reports:-
Next, select realtime from the left menu and under the event name column you can find the purchase event by clicking on that you can verify the transaction ID that was sent through the sync module.
Google Analytics 4 Custom Reports
The order tracking info is captured against each order which is later used to sync the transactions to GA4 attributing them to correct sessions and dates to improve report accuracy. The order tracking info can be viewed by going into Admin>Sales>Order>Edit any order. Please refer to the screengrab below.
Please follow the steps below to create project in Google developer console for GA reporting API and to obtain “application name” and “security key JSON File”: -
Google Analytics API (Used to access UA data)
Click Continue again without any selection
Click on Create Key from the image above and select json your key file will be downloaded. Place this key file in the VAR directory of your website. Copy the exact name with extension “.json” and input it into security Key in the configuration.
Login to your GA4 account. Go to Admin -> Property -> Property Access Management. Add the email we got in the steps above with “Viewer” or "Analyst" permissions.
Login to your Universal Analytics account. Go to Admin > User Management. Add the email we got in the steps above with “Viewer” or "Analyst" permissions.
Login to Your Google Analytics account and go to Admin>View Settings. You will be able to see your view Id there. You need to input this into the configuration as well.
php bin/magento scommerce:analyticssync:synchronize
License Key – Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at .
Application Name – It is the project name that you get from Google console. ( https://console.developers.google.com/ )
Security key (JSON) – Security key JSON file can be obtained from Google Console under account credentials.
License Key – Please add the license for the extension which is provided in the order confirmation email. Please note license keys are site URL specific. If you require license keys for dev/staging sites then please email us at
Application Name – It is the project name that you get from Google console. ( https://console.developers.google.com/)
Security key (JSON) – Security key JSON file can be obtained from Google Console under account credentials.
You can create a transaction report in GA4 using custom reports to verify the transactions received. For more information, please
Google Analytics Data API (Used to access GA4 report Data)
If you have a question related to this extension please check out our first. If you can't find the answer you are looking for then please contact .