A key component of personalizing and targeting in-product experiences built with Chameleon is sending relevant user data. 

You can do this using Segment or our API. You can send user events (actions users take) or user properties (attributes about the state of the user). You can also send company properties to help target users based on the company (account or organization) they are part of. 

👉 Learn more about sending user data to Chameleon

Data Management

All the data you send to Chameleon can be seen and managed on the Data Management section in your Chameleon Dashboard

Here you can do things like:

  • Review what data your team is sending already (and what you can use)

  • Check how recently data has been sent

  • Rename, and add a description (to help team members understand and leverage data)

  • Archive events or properties (to hide them within any lists when creating a target audience or setting a goal)

Here is an example event from the User Events section. To rename, add a description or archive the event, click on the pencil icon on the right hand side. 

This is an imported event, meaning it was sent to Chameleon via the API or an integration.

👉 Read more about how to track events, such as page views and clicks.

Here is an example user property from the User Properties section:

You will notice the data format as string  -- this helps Chameleon understand the type of data contained for this property. This also sets what kind of operators are available when using this to target users. For example, a string  data type will have operators such as contains and does not contain; whereas, for a timestamp  type, you will see operators such as before date and after date.

Note: If the data you are sending is classified as the incorrect type then please send us a message, so we can help you fix it (will require a code update). 

Nested Objects and Arrays

Chameleon supports up to 2 levels of nesting for Objects and Arrays of any length. Arrays may contain any value types except the Array and Object types.

The following is an example user profile object. Notice that it includes a nested object with an array.

chmln.identify(UID, {
  metadata: {
    role: {
      id: '5a17',
      name: 'owner',
      display_names: ['Owner', 'Admin'],
  roles: ['owner', 'contributor', 'analyst', 'billing']

Limits and Errors

The value for each user property and each Array member is limited to 768 bytes. Any data received that exceeds this limit will be truncated at the 768th byte and a warning surfaced on the data management page for user data or for company data.

Learn more

Did this answer your question?