35
Identifying Users Across Platforms with a Universal ID April 28, 2015

Identifying Users Across Platforms with a Universal ID Webinar Slides

  • Upload
    looker

  • View
    134

  • Download
    0

Embed Size (px)

Citation preview

Identifying Users Across Platforms with a Universal ID

April 28, 2015

Welcome & Webinar Overview

- This webinar will be recorded- We will take questions at the end

Keenan RiceVice President, Alliances

Looker

Collect Segment

Analyze Looker

Demo Segment+Looker

Identifying Users Across Platforms with a Universal ID

Meet our presenters…

Erin Franz Looker Data Analyst

Will JohnsonSegment Implementation Engineer

Track your analytics data for the last time with a single API.

Automatically spin up a Redshift instance with your event data.

Why is this important?

What questions are you trying to answer?

Identifying Users Across Platforms with a Universal ID

Let’s start with why you’re using analytics in the first place.

Aha Moment.

z

Aha moment

What are high value customers doing? How can we attract more?

7x7

Some questions

Cross platform analysis

How likely is a mobile user to complete their purchase on web?

Some questions

Seamless experience

How do we make sure that when a user starts something on web, they can finish on mobile?

Some questions

Before you can answer these questions

Count users once and only once.

This is surprisingly difficult.

The Answer:

A Universal ID.

Collect Segment

Analyze Looker

Demo Segment + Looker

Identifying Users Across Platforms with a Universal ID

Choose the most important events to track.

Create a naming convention.

Implement consistent naming across devices.

Collecting Data the Right Way

Event Tracking

Analytics.js

iOS

[[SEGAnalytics sharedAnalytics] identify:@"1e810c197e" traits:@{ @"name": @"Bill Lumbergh", @"email": @"[email protected]" }];

analytics.identify('1e810c197e', { name: 'Bill Lumbergh', email: '[email protected]'});

Data SchemaData SchemaAnalytics.js iOS

{ "anonymousId": "507f191e810c19729de860ea", "channel": "Javascript", "context": { "ip": 9.9.9.9, "browser": "Mozilla 5.0" }, "messageId": "UID", "projectId": "sjdhv6wim", "receivedAt": "2015-02-23T22:28:55.387Z", "sentAt": "2015-02-23T22:28:55.111Z", "traits": { "name": "Bill Lumbergh", "email": "[email protected]" }, "type": "identify", "userId": "97980cfea0067", "version": "1.1"}

{ "anonymousId": "507f191e810c19729de860ea", "channel": "iOS", "context": { "app": "{...}", "device": "{...}", "network": "{...}" }, "messageId": "UID", "projectId": "sjdhv6wim", "receivedAt": "2015-02-23T22:28:55.387Z", "sentAt": "2015-02-23T22:28:55.111Z", "traits": { "name": "Bill Lumbergh", "email": "[email protected]" }, "type": "identify", "userId": "97980cfea0067", "version": "1.1"}

Data SchemaData Schema

anonymous_id user_id name email context.X sent_at received_at

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx507f191e810c197...

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx97980cfea0067

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxBill Lumbergh

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxbill@initech.com

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx2015-02-23T22:28...

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx2015-02-23T22:28...

Identifies Table

sort key

Data SchemaData Schema

One Option for ImplementationOne Option for Implementation

Collect Segment

Analyze Looker

Demo Segment + Looker

Identifying Users Across Platforms with a Universal ID

Agile data modeling; Transform Data at Query

ETL ELTA single set of

data and definitions Hosted on-premise

or in the cloudAn analytics app server that doesn’t move your

data

A better way to explore complex data

ERIN FRANZLOOKER DATA ANALYST

“We found that we’d add a lot more value back to the organization if we gave it to everyone.”

TODD LEHRDOLLAR SHAVE CLUB

ERIN FRANZLOOKER DATA ANALYST

Define periods of user activity to analyze visit metrics

Drill into and visualize results to answer questions

Map disparate user identifiers to track user behavior over time

Universal User ID

Build on sessions in the modeling layer to capture desired analytics

SessionCreation

Custom Modeling

Explore!

Why create a Universal Id Mapping ?

Simple & Repeatable• Intuitive & reusable modeling language• Github for collaborative development• Transformation at query (ELT over ETL)

Cross Platform Analytics

Track Users Over Time

Track Users Over a Visit

Consolidate Anonymous Ids and

User Ids

Consolidate Identifiers Across

Many Visits

Consolidate Identifiers Across

Multiple Device Types

Consolidate and Track User Behavior

TracksTracking Event Data

PagesPageview Event Data

AliasesTracks User Id Changes

Use Relevant Base Tables to Create a Universal Alias Mapping Table

Anonymous Id (created pre-login) and User Id (created upon login) are recorded when available for each event.

Records Previous Id and a current User Id upon change

Create a Universal Id Mapping

Simple & Repeatable• Intuitive & reusable modeling language• Github for collaborative development• Transformation at query (ELT over ETL)

A1 A2 A3

U1

U2

Alias Next Alias

A1 U1

A2 U1

A2 U2

U1 U2

A3 U2

A1 A2 A3

U1

U2

Alias Next Alias

A1 U2

A2 U2

U1 U2

A3 U2

U2 U2

First, create the Alias to Next Alias mapping table to obtain all possible mappings.

Then map all values to the Universal Alias which will be the most current User Id.

Join the Universal Alias Mapping view to the Tracks view in our model file.

Collect Segment

Analyze Looker

Demo Segment + Looker

Identifying Users Across Platforms with a Universal ID

Demo

SessionCreation

Custom Modeling

Define periods of user activity to analyze visit metrics

Map disparate user identifiers to track user behavior over time

Universal User ID

Build on sessions in the modeling layer to capture desired analytics

SessionCreation

Custom Modeling

Using SQL to Define, Measure and Analyze User Sessionshttps://segment.com/blog/using-sql-to-define-measure-and-analyze-user-sessions/

A Guide to Universal User ID Mappinghttps://segment.com/blog/guide-to-universal-user-id-mapping/

Building the Ultimate Funnel with SQLhttps://segment.com/blog/building-ultimate-funnel-sql/

Looker and Segment Resources

Q & A

Thank you

- This webinar will be posted on looker.com tomorrow.

- Demo Looker at looker.com/demo

- Demo Segment at segment.com/demo

Thank you