Skip to contentSkip to navigationSkip to topbar
On this page
Looking for more inspiration?Visit the
(information)
You're in the right place! Segment documentation is now part of Twilio Docs. The content you are used to is still here—just in a new home with a refreshed look.

Localytics Destination


Destination Info
  • Accepts Page, Identify and Track calls.
  • Refer to it as Localytics in the Integrations object
Connection Modes
Device-modeCloud-mode
Web Web
Mobile Mobile
Server Server

Our Localytics mobile destination code is open sourced on GitHub. Feel free to check it out: iOS(link takes you to an external page), Android(link takes you to an external page).


Getting Started

getting-started page anchor

Once the Segment library is integrated with your site or app, toggle Localytics on in your Segment destinations, and add your application's App Key which you can find in your Localytics app settings. These new settings will take up to an hour to propogate to all of your existing users. For new users it'll be instanteneous!

If you are using version 1.3.0 or higher of the Segment-Localytics Android SDK, you can include a localytics.xml file in your Android project's res/values folder to define your settings. Note that any settings entered in the Segment UI will override the equivalent values defined in your localytics.xml file. You can read more about the localytics.xml file in Localytics's documentation here(link takes you to an external page).

Including a settings xml file in conjunction with a Segment-Localytics iOS SDK is not yet supported.

Note: Localytics does not accept cloud-mode data, so you must use a device-mode library ( such as Analytics.js, iOS/Android or React Native), with the Localytics SDKs bundled in order to send data to Localytics.

You must also add the Maven Localytics repo (since Localytics doesn't publish it on Maven Central). You can see an example of how to add that in the @segment-integrations/analytics-android-integration-localytics(link takes you to an external page) repository.


When you call identify, we'll set the Localytics customer Id, and set any special Localytics traits you provide, such as name, or email, and any custom traits as well.


Whenever you call track, we'll log an event with Localytics. track takes the name of the event and any optional properties you want to associate with the event.


Push notifications on Android require a bit of extra work to setup.

  • First, you need to make sure Localytics is being bundled. You can find out more information about bundled integrations in our Android documentation.
  • Follow Localytics' documentation to set up the permission in your AndroidManifest.xml(link takes you to an external page). Specifically, the AndroidManifest changes regarding the GcmReceiver, GcmListenerService, InstanceIDListenerServer, and PushTrackingActivity classes.
  • In lieu of step four, you will register the Push receiver in your Activity or Application class within a Segment onIntegrationReady method:
1
@Override protected void onResume() {
2
super.onResume();
3
4
Analytics.with(this).onIntegrationReady(BundledIntegration.LOCALYTICS, new Callback() {
5
@Override public void onIntegrationReady(Object integration) {
6
Localytics.registerPush("YOUR-SENDER-ID");
7
}
8
});
9
}

Segment lets you change these destination settings from the Segment app without having to touch any code.

Property nameTypeRequiredDescription
App Keystring
required

You can find your App Key in your Localytics Settings page(link takes you to an external page).


Custom Dimensionsmap

Optional

Localytics only accepts custom dimensions that have been pre-set in your app. Make sure to set these up in Localytics first, under Settings > Apps and then editing your app settings. You should then map the trait in an identify call or the property in a track call to the corresponding custom dimension you want to send. For e.g. you might map gender with custom dimension 0.


Session Timeout Intervalnumber

Optional

If an App stays in the background for more than this many seconds, start a new session when it returns to foreground.

Default: -1

Use Organization Scope for Attributesboolean

Optional

This allows a user to set the profileScope of attributes within Localytics to Organization. If this is enabled, the attributes that you set for a user will be available across all of your apps in Localytics. If it's unchecked, we'll use the default SDK behavior of Application scoping.

Default: false