Track screens
Contentsquare aggregates user behavior and engagement at the screen level. To do so, it is required to track screen transitions by calling a dedicated API. When the API is called, the SDK logs a screenview event that identifies the new screen with the screen name provided.
Screen name handling
Section titled Screen name handlingThe screen name length is not limited on the SDK side. However, the limit is 2083 characters on the server side.
Screenview after app in background
Section titled Screenview after app in backgroundThe SDK triggers a screenview automatically after the app is put in background and foreground, as long as a screenview with a screen name has been triggered previously. It will use the last screen name set.
Implementation recommendations
Section titled Implementation recommendationsFrom a functional standpoint, we expect a screenview to be sent:
- When the screen appears
- When a modal/pop-up is closed and the user is back on the screen
- When the app is put in the foreground (after an app hide)
How to name screens
Section titled How to name screensAs a general rule, keep distinct screen names under 100. As they are used to map your app in Contentsquare, you will want something comprehensive.
Separate words with space, dash or underscore characters
Section titled Separate words with space, dash or underscore charactersIf you want to generate screen names including more than one word, it is best to separate them and to do so using space, dash or underscore characters. Contentsquare handles automatically the formatting for them.
Example: For a sub-category list of a retail app, use Home & Living - Home Furnishings
instead of .homeLivingHomeFurnishings
Use screen template/layout names
Section titled Use screen template/layout namesAs a general recommendation, use names referring to the screen template/layout rather than referring to the specific content (data). This will help:
- To keep the number of distinct screen names low and therefore make Contentsquare easier to use
- Remove the risk of sending Personal Data to Contentsquare
List of screen types falling into that category: Product detail, Event detail, Conversation/Chat, User profile…
Screens with multiple states/layouts
Section titled Screens with multiple states/layoutsScreens can have different layouts or states depending on the user context. In this case, append its value to the screen name.
Home screen
State | Screen name |
---|---|
App landing layout | Home |
Women products layout | Home - Women |
Men products layout | Home - Men |
Sales layout | Home - Sales |
Product Detail screen (PDP)
State | Screen name |
---|---|
Users on a Top for Women PDP | PDP - Clothing - Women - Tops |
Users on a Microwave PDP | PDP - Kitchenware - Electrics - Microwave |
Users on a Hotel details screen | PDP - Holiday type - Season - Board |
User account screen
State | Screen name |
---|---|
Overview | My Account - Dashboard |
Order history | My Account - Order history |
Returns | My Account - Returns |
Search screen
State | Screen name |
---|---|
Search | Search |
Search results for “Skincare” products | Search - Skincare |
Search results error screen | Search - Error |
Cart screen
State | Screen name |
---|---|
Empty cart | Cart - Empty |
Items have been added to the cart | Cart - Populated |
Issues with availability or pricing | Cart - Error |
Checkout screen
State | Screen name |
---|---|
User provides name, surname, and date of birth | Checkout - User Details |
User provides shipping address | Checkout - Shipping Details |
User inputs their credit card information | Checkout - Payment |