About Looker

Looker, a business intelligence and big-data analytics platform, enables you to explore, analyze, and share real-time business analytics seamlessly.

Looker and Braze empower you to transform customer experiences with live customer-lifecycle data visualizations.

Integration

Braze partners with Looker through first-party Looker Blocks and flagging users within Braze via REST API. To use Looker with Braze, we recommend sending your Braze data to a data warehouse using Braze Currents, then use Braze’s Looker Blocks to quickly model and visualize your Braze data in Looker.

Braze’s Looker Blocks can reduce the burden of modeling data and enable marketers to quickly access and visualize data.

See how Braze uses Currents.

Available Looker Blocks

Our Looker Blocks help Braze customers quickly access a view of granular data we offer via Currents. Our blocks provide pre-made visualizations and modeling for Currents data so Braze customers can easily implement analytic patterns like retention, evaluate message deliverability, take a more detailed look at user behavior, and more.

Braze currently has two Blocks available: the Message Engagement Analytics and the User Behavior Analytics Blocks.

Block Description More Information Code
Message Engagement Analytics Block This block includes data around push, email, in-app messages, webhook, newsfeed, conversion, Canvas entry, and campaign control group enrollment events. Learn more about this Looker Block from Looker. See the code on Github.
User Behavior Analytics Block This block includes data around custom events, purchases, sessions, location events, and uninstalls. Learn more about this Looker Block from Looker. See the code on Github.

Implementing the Looker Blocks

To implement the Looker Blocks, follow the instructions in the README files of the Github code.

Both integrations assume that your initial Braze integration, as well as your Braze integration with a Looker-compatible data warehouse is appropriately configured to capture and send necessary data.

Flagging Users within Braze

Looker Actions allows you to flag users within Braze via the REST API Endpoint from a Looker Look. Actions requires that a dimension is tagged with braze_id. The Action will append the flagged value to the users looker_export custom attribute.

You can also find these instructions and sample code on Github.

Step 1: Create a REST API Key

Create a REST API Key with access to user.track from the Braze Developer Console.

User/Track API

Step 2: Set Up a Braze Looker Action

Setup the Braze Looker Action with the API Key, and Braze REST Endpoint.

Braze Looker Action

Step 3: Set Up Looker Develop

Within Looker Develop, select the appropriate views. Add braze_id to the dimensions tag.

1
2
3
4
5
6
dimension: external_id {
    type: string
    primary_key: yes
    sql: ${TABLE}.external_id ;;
    tags: ["braze_id"]
}

Step 4: Send the Looker Action

  1. Within a Look with a braze_id dimension selected, click the Settings gear ( ) on the upper right, and select Send....
  2. Select the custom Braze Action.
  3. From the drop down, select the appropriate Unique User Key for the Braze account (external_id or braze_id).
  4. Give the export a name. If none is provided, LOOKER_EXPORT will be used.
  5. Under Advanced Options, select Results in Table or All Results
  6. Click Send.

Send Looker Action

If the export was correctly sent, then looker_export should appear in the user’s profile as a Custom Attribute with the value you entered in the Action.

Custom Attribute in Braze from Looker

Segment Users by Looker Export

To target the flagged users, a Braze Segments can be created that matches the flagged value.

Braze Segment by Looker Export

Limitations

  • This process only works with data that has not been pivoted.
  • Currently, the API is limited to 10,000 rows sent.
  • The Final count of a user’s flag may be lower due to duplicates or non-users.

Sample Outgoing API

Sample of the Outgoing API which will be sent to the /user/track/ endpoint.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{
   "api_key" : "[API_KEY]",
   "attributes" : [
      {
        "external_id" : "user_01",
        "_update_existing_only" : true,
        "looker_export" : { "add" : ["LOOKER"] }
      },
      {
        "external_id" : "user_02",
        "_update_existing_only" : true,
        "looker_export" : { "add" : ["LOOKER"] }
      },
      {
        "external_id" : "user_03",
        "_update_existing_only" : true,
        "looker_export" : { "add" : ["LOOKER"] }
      },
      .....
   ]
}
WAS THIS PAGE HELPFUL?
New Stuff!