This article details how to tag features in your mobile application, and how to troubleshoot feature tagging.
Tag a New Feature
Tagging features can either be done when tagging a page or by accessing the designer via Manage Pages:
- Go to Pages and filter to your mobile app.
- Select the page you want to tag features on.
- Click Manage Page and start tagging your Features.
To tag a feature in your app, click on any feature in the screenshot on the right. The feature will show up in a table on the left, where you can name it, optionally group it, edit it's attributes and then save it.
Code-base solution for tagging features
Pendo may not always recognize a feature in your app. It can either render it untaggable in Pendo or it’s taggable but does not show any analytics. Our code-based solution solves this problem by allowing your mobile developers to tag and get analytics for any feature using an API.
To implement this your developer will need to do the following:
For iOS Use`enableClickAnalytics` API to mark a feature as taggable and collect its analytics.
For Android make sure the feature's property is `clickable:true`, as Pendo’s UI only allows tagging on clickable views. If you've tagged a feature but you aren’t getting any analytics for it, use `sendClickAnalytic` API to fix this.
Once features have been tagged in this way, you will need to install that app version on your device and tag the page or update an existing one.
Note: Analytics are not retroactive. Data is collected only after using this API (similar to a track event).
Edit an Existing Feature
You can access all features tagged on a specific page via the page in designer.
An alternative way to quickly edit an already-tagged feature: go to 'Product' in the left-hand navigation and click 'Features'. Then choose 'Manage Features In-App' to open the Designer on the page where the feature has been tagged.
Note: upon editing feature attributes, wait 5 minutes for the new attributes to take effect in guides, due to caching.
All Text Excluded
Toggle this attribute if you want to exclude all text fields from feature’s rule.
Best for tracking features regardless of the text they may contain. For example:
- In multi-lingual apps where button texts are different for different users
- When a button does not have consistent text across users or times
Used for features that appear across your mobile app, such as on the navigation menu or a tab bar button. Using App-Wide will allow Pendo to collect click events for these features regardless of the page it was tagged in your app.
As a best practice, tag the App-Wide Feature from the home screen or use a naming convention that will help you (or others) easily locate it (ie: "Info (tagged on Home)").
Tag all items in the list as a single feature
Pendo automatically tags the feature by the position/index of the item in the list when tagging a list item in your Application (a line in a table, a menu entry, etc).
If the 1st list item is tagged, Pendo collects analytics only on clicks on the 1st item. If the 3rd item is tagged, Pendo collects analytics only on clicks the 3rd item, and so on. This usually works well with static lists.
"Tag all items in the list as a single feature" attribute can be used for dynamic lists where the content of the list changes per user each time a user logs into the Application. This will allow you to collect analytics of any click on a list element, regardless of its position.
- Choosing List-item as Guide Activation would launch the guide by clicking on any of the list items
- Targeting a List-item with a Tooltip Guide will point at the first item in the list
Advanced feature attributes
Pendo identifies the mobile feature based on its attributes. At times, the automatically-selected default attributes may not identify the feature precisely. You can refine feature rules by toggling the attributes that best identify the feature.
Note that not all attributes appear for all features, each feature has different set of attributes.
Bundle Name Excluded (iOS only)
A bundle name uniquely identifies an application in Apple's ecosystem. This means that no two applications can have the same bundle identifier. Bundle name is sometimes part of the element ID and is sometimes different for different version of your app, for example - for production app and testing app. If you want the feature to be identified disregarding the bundle name, it's recommended to exclude it from the feature rule.
Click Action (iOS and React Native only)
Click action is the signature of the method that is called in-app code when the feature is clicked. Enable this attribute if this method's feature click action uniquely identifies the feature.
The feature's displayed text. Enable this attribute if this text uniquely identifies this feature.
A text is used by assistive technology (voiceover) to describe what the feature does, without having to rely on implied context. Enable this attribute if this text is unique for all accessibility hints on this page.
Accessibility Hint (iOS only)
A text that contains a description of the result of performing an action on the accessibility element. Enable this attribute if the text is unique for all accessibility hints on this page.
Accessibility Identifier (iOS only)
A string that is developer-facing only and is used to identify an accessible element to UI automation and testing tools. Enable this attribute if this text is unique for all accessibility identifiers on this page.
The feature's child elements' displayed text. Enable this attribute if the texts of the child elements are unique on this page.
Index in Parent
This feature is part of an ordered collection of items, where each item has its unique position. Enable this attribute if the position of the feature in the collection (Index) is static. Note: index list starts with 0. Do not use it if the feature is located inside a table view.
Feature ID (Android only)
Feature ID assigned by the developer in the code. Enable this attribute since it's a unique identifier of this feature on the page it's located on How to identify issues with feature analytics
Identifying Issues with Feature Analytics
Does it look like there are too few or too many clicks on a specific feature? Or are features showing identical clicks?
This could mean the default rule which Pendo selected may be too strict, or not strict enough. We recommend refining a feature's rules if you notice a potential issue with the analytics.
How to update:
- Go to Pages and filter to your mobile app.
- Select the page where the feature is on, and click Manage Page.
- Select Edit (pencil icon) on the feature you want to update.
You can always see how the changes are affecting the feature rule before applying them:
Tagging 'below-the-fold' Features
If some of your features reside "below the fold" i.e. they do not exist in the original page's screenshot, follow these instructions:
- Capture the page in its scrolled state and save it as a new page. The name can indicate that this is a 'below-the-fold' capture.
- Tag features on this new page.
- Note that the page analytics of this 'below-the-fold' page will be the same as the original page.
Frequently Asked Questions
How are my features identified?
- A feature is always tagged in the context of a page.
- A rule is created for each tagged feature that relates to the "class" of the element, the element's text if such exists, its position in the list, its position on the page, and many other parameters.
- If a feature is not identified correctly, contact our support so that we can modify the feature's rule to match your needs.
- Features will usually be identified correctly across your app versions. However, if you performed User Interface changes to your app and specifically changed button texts, you might need to Update the Mobile Page in order to make sure all features are identified correctly and fix the tagging if needed.
I hover above a feature, but more than one feature is highlighted instead of the desired one. What should I do?
We now highlight all matching features upon tag in order to prevent situations where Pendo's automatic feature-identifier (rule) isn't enough to distinguish between several features on the page. This means, that without refining the automatic rules, these features would count as the same feature.
To fix this, tag the first feature, refine its rules to be more specific to this feature, and then tag the other feature.
I can’t tag some of the features in my application. What do I do?
There are many ways to implement mobile buttons within an App and we are optimizing the way our SDK identifies features. However, if you’re unable to tag and receive analytics for specific mobile features, please contact our support. A possible workaround is using Track Events to track specific features to collect that data.
I stopped getting new analytics for some of the tagged pages. Why is that?
Have you released a new app version to the store recently? If some of your pages/features changed in the newly released app version, you can update them by Updating the Mobile Page.