Manage metadata across multiple apps

Last updated:

Pendo always stores the last metadata value we received and doesn’t differentiate between applications. As such, if there are multiple applications in a subscription, it's important to determine if the applications send conflicting values for the same metadata field. Otherwise, data is constantly overwritten as the user moves between the applications.

This article provides guidance on how to send metadata about your users to Pendo when you have multiple applications set up in the same Pendo subscription. This ensures that metadata values for your users are preserved across each application and prevents negative disruption to your segments.

You should use the following guidance: 

  • If you're an Engage customer that has multiple or will have multiple applications (both web and mobile) within a single Pendo subscription.
  • If you plan to use the same metadata field for multiple applications.


In the example below, you can see what happens when you pass the same metadata field to Pendo with conflicting values from two separate applications. You can also learn how to reconfigure metadata fields to prevent the loss of data.

Example scenario

There are two applications in a single Pendo subscription, Product A and Product B. Visitor ID "Avery_H" is a user of both products but has different roles in each of them.

Incorrect configuration

Product A and Product B are sending different values for the same metadata field of "Role" for Avery_H.

Product A
Visitor ID: Avery_H
Role: Admin
Product B
Visitor ID: Avery_H
Role: User

The metadata field Role always reflects the last value Pendo received. If Avery_H is regularly switching between Products A and B, you see the Role value in Pendo repeatedly change from “Admin” to “User” and vice versa, based on the last application the user accessed.

In this configuration, to Pendo, Avery_H is either an Admin or a User for all applications in the Pendo subscription. This does not accurately reflect that Avery_H is in fact both an Admin in Product A and a User in Product B.

If you wanted to create a segment that captured all Admins for Product A, this configuration would not work because Avery_H would be removed from the segment every time they visited Product B and their role was updated to User.

Correct configuration

To ensure that Pendo stores both Role values for the two different applications, it is important to differentiate between those products at the metadata level. You can easily do this by appending the application name, or an abbreviation of the application name, to the metadata field. For example:

Product A
Visitor ID: Avery_H
Role_Product A: Admin
Product B
Visitor ID: Avery_H
Role_Product B: User

With this configuration, Pendo is accurately reflecting Avery_H’s role in both applications and you could build a segment of “Role_ProductA is equal to Admin” and have confidence that Avery_H’s membership of that segment would not depend on the last application they were active in.

Next steps

If you have concerns that this situation might apply to you, talk to your developers about what metadata fields you are sending to Pendo for each of your applications. We recommend documenting the metadata you are passing to Pendo across all applications, as well as what the possible values are for each field so that you can more easily track and flag potential issues.

For more information regarding metadata, see our Configure visitor and account metadata and Data mapping and data types in Pendo articles.

Was this article helpful?
0 out of 1 found this helpful