Real-Time Journeys

Learn how to set up and launch real-time journeys to engage users instantly based on live event data

In this guide, we’ll walk through how to set up a real-time journey. Real-time journeys enable dynamic, event-driven engagement based on live data.

Prerequisites

Before you begin, make sure you have:

  • Apache Kafka for event streaming (learn more here). Support for SQS and Pub/Sub will be added in the future.
  • SendGrid or Salesforce Marketing Cloud (SFMC) for email marketing (currently, these are the only real-time destinations supported).
  • Real-time events enabled in your org. If you don’t see this, contact your GrowthLoop rep to enable it.

Step 1: Configure a Real-Time Source Connection

  1. Log into GrowthLoop and go to the Organization page.
  2. Open the Source Connections tab and click New Source Connection.
  3. In the modal, select Kafka.
  4. Fill out the required details for the event queue connection:
Field NameRequiredDescriptionExampleNotes
Nameβœ… YesA unique name to identify this Kafka connection.ProductionKafkaCluster, OrdersEventBrokerMust be unique across connections. Used for display and reference.
Description❌ NoAdd context about the connection.Kafka cluster for production eventsHelpful for documentation/debugging.
Bootstrap Serversβœ… YesComma-separated list of broker addresses.kafka-1.company.com:9092,kafka-2.company.com:9092At least one must be reachable.
Topic Nameβœ… YesKafka topic the consumer will subscribe to.user-signups, order.createdMust already exist in the cluster.
Group ID❌ NoConsumer group ID.signup-event-workersAuto-generated if left blank.
Security Protocolβœ… YesDefines communication/security protocol.β€”Common: PLAINTEXT, SSL, SASL_SSL.
Mechanism⚠️ ConditionalRequired if using SASL.PLAIN, SCRAM-SHA-256Must match Kafka server config.
Username⚠️ ConditionalSASL username.β€”Provided by Kafka admin.
Password⚠️ ConditionalSASL password.β€”Keep secure.
  1. Click Create. A test connection will run, and if successful, your new source connection will be saved.
πŸ‘

Success

You’ve successfully configured a real-time source connection!

Step 2: Create a Real-Time Event

  1. In the side menu, go to Datasets and select the Realtime Events tab.
  2. Click New Realtime Event.
  3. Fill out the event registration form:
Field NameRequiredDescription
Event Sourceβœ… YesSelect the real-time source connection (e.g., ProductionKafkaCluster).
Event Nameβœ… YesA human-readable label for this event (e.g., UserSignup, OrderPlaced).
Path to Eventβœ… YesField path in the Kafka message to inspect (supports dot notation, e.g., user.status.type).
Event Valueβœ… YesValue in the field above that triggers the event (e.g., signup). Messages without this value are ignored.
Register Event Schemaβœ… YesJSON Schema describing the event payload for validation and field extraction.
  1. Click Save.
πŸ‘

Success

You’ve successfully created a real-time event!

Step 3: Add the Real-Time Event to a Dataset Group

  1. Switch to the Dataset Group tab.
  2. Select your Dataset Group, then open the Realtime Events tab.
  3. Click Add Realtime Event.
  4. In the modal, select the event you created.
  5. Map the real-time field to your dataset’s primary key.

Step 4: Create a Real-Time Journey

  1. In the side menu, go to Journeys and click New Journey.
  2. In setup, choose Realtime Journey as the type.
  3. Select the Dataset Group with your registered event.
  4. From Select Realtime Event, choose your event.
  5. Configure the rest of the journey and click Continue. You’ll see a real-time entry node appear on the canvas with a lightning icon.
  6. Next, drag a Criteria node onto the canvas and filter users by event fields (e.g., event type, attributes).
  7. Then, drag a Destination node and choose a real-time destination (SendGrid or SFMC).
πŸ“˜

Note

The fields available in real-time destination node are sourced from the real-time event message schema and can be used for email recipient selection and template personalization.

  1. Click Publish to activate the journey.
πŸ‘

Success

You’ve successfully created a real-time journey!


πŸ“˜

Need help?

If you run into issues with Real-Time Journeys, reach out to us at [email protected].