Adopture Docs
SDKsFlutter

Super Properties

Set global properties that are automatically attached to every event.

Super properties are key-value pairs that are automatically included with every event you track. They are useful for values that rarely change, such as the user's subscription plan, app theme, or A/B test group.

Register Properties

Set one or more super properties that will be attached to all future events:

await Adopture.registerSuperProperties({
  'app_theme': 'dark',
  'subscription_tier': 'pro',
});

Register Once

Set properties only if they have not already been registered. This is useful for values you want to capture once, like the date of first launch:

await Adopture.registerSuperPropertiesOnce({
  'first_open_date': '2025-01-15',
});

Remove a Property

Remove a single super property by key:

await Adopture.unregisterSuperProperty('app_theme');

Clear All Properties

Remove all registered super properties:

await Adopture.clearSuperProperties();

Read Current Properties

Access the current set of super properties:

Map<String, String> props = Adopture.superProperties;

Persistence

Super properties are persisted across app restarts using SharedPreferences. You do not need to re-register them each time the app launches.

Priority

If an event-level property has the same key as a super property, the event-level property takes precedence. This allows you to override a super property for a specific event without changing the global value.

On this page