Skip to main content
User properties are the custom attributes your app knows about a user — their plan, lifetime value, feature flags, anything. You send them from your app through MicroSurvey.identify({ properties }), and Insito discovers them into a per-app registry you can target surveys against. They live at admin.insito.app → your project → Settings → [your app name] → User properties (?tab=user-properties), and power the User properties section of the survey Audience filter builder.

How properties are discovered

You don’t register properties up front. The first time your app sends one, it appears here automatically with its type inferred from the value:
Only string, number, and boolean values are supported. The latest value you send is stored per user, so call identify() again whenever something changes — the dashboard and audience filters always use the most recent value.
User properties are per app. A plan property on one app is independent of a plan property on another. They’re also distinct from the device metadata the SDK captures automatically (locale, timezone, session count, …), which show up as Device properties instead.

Managing properties

On the User properties settings tab, each property shows its name, inferred type, when it was last seen, and roughly how many users have reported it. You can edit the display label and description so teammates know what each one means. Properties are discovery-only — they’re created and typed by the SDK, so there’s no add or delete here. A property stops appearing once your app stops sending it (and you can ignore it in the meantime).

Targeting with user properties

When you build a survey Audience, the property picker is split into two groups:
  • Device properties — the fixed catalog the SDK captures automatically (platform, locale, sessionCount, daysSinceInstall, environment, …).
  • User properties — everything discovered from your identify() calls.
Operators adapt to each property’s type: text properties offer equals / contains / in, numbers offer the comparison operators (>, , <, ), and booleans collapse to is true / is false. You can always type a property name that hasn’t been discovered yet — the field never blocks you.