RudderStack-Singular Integration Setup Approaches

The different integration approaches available for the RudderStack-Singular integration.

This guide explains the different approaches for setting up the Singular integration with RudderStack. It also provides recommendations to help you select the most suitable configuration.

Setup overview

The following table summarizes the available integration setup approaches to help you identify the right one for your use case:

AspectSingular SDK + cloud modeRudderStack cloud mode onlyRudderStack device mode
Singular SDK usageInitialized separately, outside of RudderStackNot usedWrapped and initialized by RudderStack
Session managementSingular SDK (automatic) — you must NOT configure the Session Event Name connection settingSelf-managed — you must configure the Session Event Name connection settingSingular SDK (automatic)
Identifier usedSingular device ID (SDID), if available in the events. Otherwise, platform-specific identifiersSingular device ID (SDID), if available in the events. Otherwise, platform-specific identifiersSingular SDK manages this internally
Best forUsing Singular SDK for session tracking while sending events via RudderStackSending all events (including sessions) through RudderStackLetting the Singular SDK handle all event tracking automatically

The following flowchart summarizes all the integration setup approaches covered in this guide and helps you choose the most suitable approach for your use case:

1. Singular SDK with RudderStack cloud mode

In this approach, you initialize the Singular SDK separately (outside of RudderStack) in your app. The Singular SDK manages session tracking automatically.

warning

Important consideration

  • Do not configure the Session Event Name in the connection settings while setting up the Singular destination in RudderStack. As the Singular SDK already manages session events, configuring this setting will result in duplicate session events.

  • Do not explicitly send the following events via RudderStack:

    • Application Installed
    • Application Opened
    • Application Updated

You then send all other events to Singular via RudderStack in cloud mode (either from the client-side or the server-side SDKs). The identifier you choose determines which Singular API version RudderStack uses:

Singular device ID (SDID)
Platform-specific identifiers
  • RudderStack’s SDKs automatically retrieve platform-specific device identifiers (like idfa, andi, idfv, and aifa) and pass them in all events
  • RudderStack uses Singular’s API v1 to send the events

2. RudderStack cloud mode only (no Singular SDK)

In this approach, you don’t use the Singular SDK at all. All events (including session events) are sent to Singular via RudderStack in cloud mode.

warning

Important consideration

Since the Singular SDK is not managing sessions, you must configure the Session Event Name in the connection settings so RudderStack can send session events to Singular on your behalf.

The identifier you choose determines which Singular API version RudderStack uses:

Singular device ID (SDID)
Platform-specific identifiers
  • RudderStack’s SDKs automatically retrieve platform-specific device identifiers (like idfa, andi, idfv, and aifa)
  • All events (including session events) are sent to Singular with these identifiers
  • RudderStack uses Singular’s API v1 to send the events

3. RudderStack device mode

When sending events to Singular in device mode, RudderStack automatically wraps and initializes the Singular SDK.

The Singular SDK manages device identification and event tracking internally — so no session events are sent via RudderStack.

Next steps

See the Singular Destination Setup Guide for more information on setting up the Singular destination in RudderStack

Questions? We're here to help.

Join the RudderStack Slack community or email us for support