You can get more information about how merchants are finding your app listing in the Shopify App Store by tracking your listing traffic with Google Analytics or Facebook Pixel. [Optimize your listing](/docs/apps/launch/marketing#improving-your-app-listing) for both merchants and the Shopify App Store search engine, by gaining a better understanding of how merchants currently discover your app. > Note > Both [full and limited visibilty](/docs/apps/launch/distribution/visibility) apps can add Google Analytics or Facebook Pixel tracking, but limited visible apps won't show up in Shopify App Store search results or category pages. ## Set up Google Analytics for your app listing 1. Log in to your [Partner Dashboard](https://partners.shopify.com/organizations). 2. Click **Apps**. 3. Click the name of your app. 4. Click **Distribution**. 5. Click **Create listing** or **Manage listing**, and then click the listing that you want to edit. 6. In the **Tracking information** section, next to **Google analytics code (optional)**, enter your GA4 measurement ID. 7. Click **Save**. ### Migrating from Universal Analytics to Google Analytics 4 Google Universal Analytics is being sunset in July 2023. If you previously used Universal Analytics for your app listing and you want to migrate to Google Analytics 4, then follow the [process to set up Google Analytics](#set-up-google-analytics-for-your-app-listing), but replace your UA tracking ID with your new GA4 tracking ID. Depending on how you use Universal Analytics, you might need to perform the following additional steps: - If you use Universal Analytics audiences, then you need to [migrate audiences to GA4](https://support.google.com/analytics/answer/11184423). - If you use Universal Analytics to track Google Ad conversions on your app listing, then you need to [migrate conversion tracking to GA4](https://support.google.com/analytics/answer/11184423). ### Full-funnel app install attributions To provide full details of the app installation funnel, the Shopify App Store uses [Google Analytics 4's Measurement Protocol](https://developers.google.com/analytics/devguides/collection/protocol/ga4) for server-side events (like app installation). To receive these events, an app listing must be on Google Analytics 4 and have entered an API secret generated in the Google Analytics UI. The following events are sent to Google Analytics and display in the Real-time view. However, event parameters might take up to 24 hours to propagate and need to be added as an [Event-scoped Custom Dimension](https://support.google.com/analytics/answer/10075209?hl=en#zippy=%2Ccreate-an-event-scoped-custom-dimension%2Ccreate-a-custom-metric%2Canalyze-an-event-scoped-custom-dimension). <table> <caption>Events sent to Google Analytics</caption <tr> <th scope="col">Event name</th> <th scope="col">Parameters</th> <th scope="col">Description</th> </tr> <tr> <td><code>shopify_app_install</code></td> <td> <ul> <li><code>api_key</code></li> <li><code>shop_id</code></li> <li><code>shop_name</code></li> <li><code>shop_url</code></li> </ul> </td> <td>Sent when a merchant finishes installing an app.</td> </tr> <tr> <td><code>shopify_app_ad_click</code></td> <td> <ul> <li><code>api_key</code></li> <li><code>surface_type</code></li> <li><code>surface_detail</code></li> </ul> </td> <td>Sent when a merchant visits an app listing from a Shopify App Store ad click.</td> </tr> </table> To generate an API secret: 1. Log into your [Google Analytics](https://analytics.google.com/analytics/web/#/). 2. Click on the **Admin** icon in the bottom left corner. 3. Click on **Data Streams** under Property settings. 4. Select the measurement stream which corresponds to the **Measurement ID** which you have added to your app listing. 5. Click on **Measurement Protocol API secrets** and click **Create** to generate a new API Secret. <video style="width: 100%;height: auto;margin: 40px 0;display: block;" muted loop controls> <source src="/assets/api/listing-in-the-app-store/google-analaytics-4-api-secret.webm" type="video/webm"> <source src="/assets/api/listing-in-the-app-store/google-analaytics-4-api-secret.mp4" type="video/mp4"> </video> To add the API secret to your app listing: 1. Log in to your [Partner Dashboard](https://partners.shopify.com/organizations). 2. Click **Apps**. 3. Click the name of your app. 4. Click **Distribution**. 5. Click **Create listing** or **Manage listing**, and then click the listing that you want to edit. 6. In the **Tracking information** section, next to **Google analytics code (optional)**, ensure you have upgraded to Google Analyitics 4. 7. Enter your API Secret. 8. Click **Save**. ### Google e-commerce events To enhance tracking for e-commerce related interactions, the following events have been implemented: <table> <caption>E-commerce events sent to Google Analytics</caption> <tr> <th scope="col">Event name</th> <th scope="col">Parameters</th> <th scope="col">Description</th> </tr> <tr> <td><a href="https://developers.google.com/analytics/devguides/collection/ga4/reference/events?sjid=2649380085872637034-NC&client_type=gtag#view_item"><code>view_item</code></a></td> <td> <ul> <li><code>currency</code></li> <li><code>value</code></li> <li><code>items</code></li> <li><code>item_id</code></li> <li><code>item_name</code></li> <li><code>price</code></li> <li><code>quantity</code></li> </ul> </td> <td>Sent when a merchant views an app's details page</td> </tr> <tr> <td><a href="https://developers.google.com/analytics/devguides/collection/ga4/reference/events?sjid=2649380085872637034-NC&client_type=gtag#add_to_cart"><code>add_to_cart</code></a></td> <td> <ul> <li><code>currency</code></li> <li><code>value</code></li> <li><code>items</code></li> <li><code>item_id</code></li> <li><code>item_name</code></li> <li><code>price</code></li> <li><code>quantity</code></li> </ul> </td> <td>Sent when a merchant clicks the <strong>Install</strong> button</td> </tr> </table> ### Other events You might want to track the following additional Shopify-specific events in Google Analytics. These events are triggered client-side from the Shopify App Store. <table> <caption>Event sent to Google Analytics</caption> <tr> <th scope="col">Event name</th> <th scope="col">Parameters</th> <th scope="col">Description</th> </tr> <tr> <td><code>Add App button</code></td> <td> <ul> <li><code>event_category</code>: Always returns <code>Shopify App Store</code>.</li> <li><code>event_label</code>: The app's handle.</li> </ul> </td> <td>Sent when a app user clicks <b>Install</b> on an App Listing page.</td> </tr> <tr> <td><code>Open app button</code></td> <td> <ul> <li><code>event_category</code>: Always returns <code>Shopify App Store</code>.</li> <li><code>event_label</code>: The app's handle.</li> </ul> </td> <td>Sent when a app user clicks <b>Open</b> on an App Listing page.</td> </tr> </table> ## Set up Facebook Pixel for your app listing 1. Log in to your [Partner Dashboard](https://partners.shopify.com/organizations). 2. Click **Apps**. 3. Click the name of your app. 4. Click **Distribution**. 5. Click **Create listing** or **Manage listing**, and then click the listing that you want to edit. 6. In the **E. Tracking** section, next to **3. Facebook Pixel (optional)**, enter your Facebook Pixel tracking ID. 7. Click **Save**. ### Meta Pixel events To enhance tracking for e-commerce related interactions, the following events have been implemented: <table> <caption>E-commerce events sent to <a href="https://developers.facebook.com/docs/meta-pixel/reference/">Meta Pixel</a></caption> <tr> <th scope="col">Event name</th> <th scope="col">Parameters</th> <th scope="col">Description</th> </tr> <tr> <td><code>ViewContent</code></td> <td> <ul> <li><code>content_ids</code></li> <li><code>content_name</code></li> <li><code>currency</code></li> <li><code>value</code></li> </ul> </td> <td>Sent when a merchant views an app's details page</td> </tr> <tr> <td><code>AddToCart</a></td> <td> <ul> <li><code>content_ids</code></li> <li><code>content_name</code></li> <li><code>currency</code></li> <li><code>value</code></li> </ul> </td> <td>Sent when a merchant clicks the <strong>Install</strong> button</td> </tr> </table> ## URL parameters After you've set up Google Analytics or Facebook Pixel for your app listing, Shopify passes additional URL parameters when a merchant visits your app listing from the Shopify App Store. You can see parameters such as the following in your Google Analytics or Facebook Pixel dashboard: ![The additional parameters shown in the Google Analytics or Facebook Pixel dashboard](/assets/api/being-successful-in-the-app-store/ga-parameters.png) These are noteworthy parameters which can appear in the URL and their meaning: <table> <tr> <th>Parameter</th> <th>Description</th> <th>Possible values</th> </tr> <tr> <td>locale</td> <td>The language that the merchant has selected in the Shopify App Store.</td> <td> <ul> <li><code>zh-CN</code>: Chinese (Simplified)</li> <li><code>zh-TW</code>: Chinese (Traditional)</li> <li><code>cs</code>: Czech</li> <li><code>da</code>: Danish</li> <li><code>nl</code>: Dutch</li> <li><code>fi</code>: Finnish</li> <li><code>fr</code>: French</li> <li><code>de</code>: German</li> <li><code>hi</code>: Hindi</li> <li><code>it</code>: Italian</li> <li><code>ja</code>: Japanese</li> <li><code>ko</code>: Korean</li> <li><code>nb</code>: Norwegian (Bokmal)</li>193 <li><code>pl</code>: Polish</li> <li><code>pt-PT</code>: Portuguese</li> <li><code>pt-BR</code>: Portuguese (Brazilian)</li> <li><code>es</code>: Spanish</li> <li><code>sv</code>: Swedish</li> <li><code>th</code>: Thai</li> <li><code>tr</code>: Turkish</li> </ul> </td> </tr> <tr> <td>surface_type</td> <td>The type of page the merchant came from to get to your app listing.</td> <td> <ul> <li><code>home</code>: The home page of the Shopify App Store.</li> <li><code>search</code>: The organic search result on the Shopify App Store.</li> <li><code>search_ad</code>: The paid search result on the Shopify App Store.</li> <li><code>category</code>: One of the category pages on the Shopify App Store.</li> <li><code>collection</code>: One of the collection pages on the Shopify App Store.</li> <li><code>story</code>: One of the story pages on the Shopify App Store.</li> <li><code>partners</code>: One of the partner pages on the Shopify App Store.</li> <li><code>app_details</code>: One of the app listing pages on the Shopify App Store.</li> <li><code>app_group</code>: One of the app extension pages on the Shopify App Store.</li> </ul> </td> </tr> <tr> <td>surface_detail</td> <td>Details about the page that the merchant came from.</td> <td> <ul> <li>For <code>home</code>, this is the descriptive handle of the section of the home page where the merchant found your app.</li> <li>For <code>search</code>, this is the merchant's search query.</li> <li>For <code>category</code>, this includes the titles of the category and the subcategories, joined by a hyphen.</li> <li>For <code>collection</code>, this is the title of the collection where the merchant found your app.</li> <li>For <code>story</code>, this is the descriptive handle of the section of the story page where the merchant found your app.</li> <li>For <code>app-details</code>, this is the unique handle of the app listing page where the merchant found your app.</li> </ul> </td> </tr> <tr> <td>surface_inter_position</td> <td>The section on the page where the merchant found your app.</td> <td> <ul> <li>For <code>home</code>, this is the section of the Shopify App Store home page where the merchant found your app. The sections are numbered from the top, starting with 1.</li> <li>For <code>search</code>, this is the page of search results where the merchant found your app.</li> <li>For <code>category</code>, this is the page of category results where the merchant found your app.</li> <li>For <code>collection</code>, this is the page of collection results where the merchant found your app.</li> <li>For <code>story</code>, this is the section of the story page where the merchant found your app. The sections are numbered from the top, starting with 1.</li> <li>For <code>app-details</code>, this is the section of the app listing page where the merchant found your app. The sections are numbered from the top, starting with 1.</li> </ul> </td> </tr> <tr> <td>surface_intra_position</td> <td>The position within the section of the page where the merchant found your app. The positions are numbered left to right, top to bottom, starting with 1.</td> <td> <ul> <li>For <code>home</code>, this is the position of your app within the section.</li> <li>For <code>search</code>, this is the position of your app on the results page.</li> <li>For <code>category</code>, this is the position of your app on the category page.</li> <li>For <code>collection</code>, this is the position of your app on the collection page.</li> <li>For <code>story</code>, this is the position of your app within the section.</li> <li>For <code>partners</code>, this is the position of your app on the partner page.</li> <li>For <code>app-details</code>, this is the position of your app within the section.</li> </ul> </td> </tr> </table>