68
10 — Analytics & Optimization From Code to Product gidgreen.com/course

Analytics and Optimization 2013

Embed Size (px)

Citation preview

Page 1: Analytics and Optimization 2013

10 — Analytics & Optimization

From Code to Product gidgreen.com/course

Page 2: Analytics and Optimization 2013

Lecture 10

•  Introduction •  Data collection •  Website metrics •  Optimization •  Competitive intelligence •  Surveys •  Tools and books

From Code to Product Lecture 10 — Analytics— Slide 2 gidgreen.com/course

Page 3: Analytics and Optimization 2013

Why analytics?

•  Quantify success/failure – For yourselves – For investors – Against competition

•  Scientific decisions – No blind faith – Fewer arguments – Avoid HiPPO = highest paid person’s opinion

From Code to Product Lecture 10 — Analytics— Slide 3 gidgreen.com/course

Page 4: Analytics and Optimization 2013

Good analytics

•  Simple •  Few in number •  Relevant •  Unambiguous •  Actionable •  Instant (or nearly) •  Repeatable

From Code to Product Lecture 10 — Analytics— Slide 4 gidgreen.com/course

Page 5: Analytics and Optimization 2013

AARRR — Metrics for pirates

From Code to Product Lecture 10 — Analytics— Slide 5 gidgreen.com/course

Acquisition Site visit or app download

Activation Registration or usage

Retention Repeat usage

Referral Brings other people

Revenue Generate cash

Dav

e M

cClu

re,

500

Star

tups

Page 6: Analytics and Optimization 2013

Some quotes

“What gets measured, gets managed.” — Peter Drucker

“The only metrics that entrepreneurs should invest energy in collecting are those that help them make decisions.”

— Eric Ries, The Lean Startup

From Code to Product Lecture 10 — Analytics— Slide 6 gidgreen.com/course

Page 7: Analytics and Optimization 2013

Lecture 10

•  Introduction •  Data collection •  Website metrics •  Optimization •  Competitive intelligence •  Surveys •  Tools and books

From Code to Product Lecture 10 — Analytics— Slide 7 gidgreen.com/course

Page 8: Analytics and Optimization 2013

In-app analytics

•  Home rolled or third party •  Store usage information locally

– ‘Call home’ when online

•  Privacy concerns – Confirmation dialog?

•  Complete access to device – But you will be caught!

•  Problem: slow iteration

From Code to Product Lecture 10 — Analytics— Slide 8 gidgreen.com/course

Page 9: Analytics and Optimization 2013

In-app integration

From Code to Product Lecture 10 — Analytics— Slide 9 gidgreen.com/course

Page 10: Analytics and Optimization 2013

Reporting app events

From Code to Product Lecture 10 — Analytics— Slide 10 gidgreen.com/course

Page 11: Analytics and Optimization 2013

Web analytics

•  All activity visible to site – Users don’t expect privacy

•  Web servers log requests – Also: Javascript solutions

•  Page view centric – Other events require integration – Coffee break? – Events not sessions

From Code to Product Lecture 10 — Analytics— Slide 11 gidgreen.com/course

Page 12: Analytics and Optimization 2013

A web server log line

www.websudoku.com 24.186.55.113 [06/May/2012:08:13:02 -0400] "GET / HTTP/1.1” 200 1045 "http://www.google.com/search?q=sudoku”

"Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B179 Safari/7534.48.3" From Code to Product Lecture 10 — Analytics— Slide 12 gidgreen.com/course

Page 13: Analytics and Optimization 2013

Javascript tracking code <script type="text/javascript”> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-1165533-3']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script>

From Code to Product Lecture 10 — Analytics— Slide 13 gidgreen.com/course

Page 14: Analytics and Optimization 2013

Web metrics alternatives

From Code to Product Lecture 4 — UI Design— Slide 14 gidgreen.com/course

Server logs Javascript Home-made

Integration None Via HTML Server code

Convenience Download + analyze

Web-based access Up to you

Delay None Up to 24 hours Up to you

Reporting Varies Advanced Up to you

Other events Hard Via API Easy

Data leakage None Total! None

Page 15: Analytics and Optimization 2013

Track web users by…

•  IP address – Given for every web request – Good for geography – But: proxies, classrooms, router resets

•  Cookies – Track user browser over long term – But: clearing, multi-browsing, first request – Customization of web server

From Code to Product Lecture 10 — Analytics— Slide 15 gidgreen.com/course

Page 16: Analytics and Optimization 2013

Track web users by…

•  Log in – Reliable for registered users – But: anonymous users, multiple accounts – Requires custom logging tools

•  Solution: combine! –  Intelligently tie IPs, cookies and accounts – Example: user registration

•  Data always incomplete

From Code to Product Lecture 10 — Analytics— Slide 16 gidgreen.com/course

Page 17: Analytics and Optimization 2013

Lecture 10

•  Introduction •  Data collection •  Website metrics •  Optimization •  Competitive intelligence •  Surveys •  Tools and books

From Code to Product Lecture 10 — Analytics— Slide 17 gidgreen.com/course

Page 18: Analytics and Optimization 2013

Basic website metrics

From Code to Product Lecture 10 — Analytics— Slide 18 gidgreen.com/course

Page 19: Analytics and Optimization 2013

Immediate questions

•  When does one visit end? – GA: 30 minutes without activity

•  What makes a visitor unique? – GA: Tracking cookie

•  How is duration calculated? – GA: Time between first and last pages

•  What makes a visitor new? – GA: Never visited your site before

From Code to Product Lecture 10 — Analytics— Slide 19 gidgreen.com/course

Page 20: Analytics and Optimization 2013

Geography

From Code to Product Lecture 6 — BM — Advertising— Slide 20 gidgreen.com/course

Page 21: Analytics and Optimization 2013

Demographics

From Code to Product Lecture 6 — BM — Advertising— Slide 21 gidgreen.com/course

Page 22: Analytics and Optimization 2013

Frequency report

From Code to Product Lecture 10 — Analytics— Slide 22 gidgreen.com/course

Page 23: Analytics and Optimization 2013

Sources of traffic

•  Type-in (no referrer) –  Includes browser bookmarks

•  Search engines – Navigational search = type-in

•  Referrals – Website links or social media

•  Paid advertising •  Email campaigns

From Code to Product Lecture 10 — Analytics— Slide 23 gidgreen.com/course

Page 24: Analytics and Optimization 2013

The multitouch problem

•  There’s history before the referrer – Who deserves the credit, e.g. affiliates

•  So who gets the credit? – Last click (standard) – First click (unrealistic) – Even split – Split weighted to last

From Code to Product Lecture 10 — Analytics— Slide 24 gidgreen.com/course

Page 25: Analytics and Optimization 2013

Search engine queries

From Code to Product Lecture 10 — Analytics— Slide 25 gidgreen.com/course

Also: internal site search

Page 26: Analytics and Optimization 2013

Popular pages

From Code to Product Lecture 10 — Analytics— Slide 26 gidgreen.com/course

Page 27: Analytics and Optimization 2013

Landing/entry pages

From Code to Product Lecture 10 — Analytics— Slide 27 gidgreen.com/course

“You can’t choose your home page” — A. Kaushik

Page 28: Analytics and Optimization 2013

Clickmaps and heatmaps

From Code to Product Lecture 10 — Analytics— Slide 28 gidgreen.com/course

Page 29: Analytics and Optimization 2013

Conversion funnel

From Code to Product Lecture 10 — Analytics— Slide 29 gidgreen.com/course

Sour

ce:

ww

w.s

earc

heng

inej

ourn

al.c

om

Page 30: Analytics and Optimization 2013

Sampling methods

•  Popular site => lots of data – Burden to collect, slow to analyze

•  Don’t record all events – Choose important pages – Random subset of visitors – Random subset of pageviews

•  Sub-sample when analyzing – By page or visitor

From Code to Product Lecture 10 — Analytics— Slide 30 gidgreen.com/course

Page 31: Analytics and Optimization 2013

Staleness due to changes in…

•  Content •  User familiarity

– Early adopters vs ...

•  Search engine rankings •  Market needs •  Devices •  Cookies

From Code to Product Lecture 10 — Analytics— Slide 31 gidgreen.com/course

Page 32: Analytics and Optimization 2013

Lecture 10

•  Introduction •  Data collection •  Website metrics •  Optimization •  Competitive intelligence •  Surveys •  Tools and books

From Code to Product Lecture 10 — Analytics— Slide 32 gidgreen.com/course

Page 33: Analytics and Optimization 2013

Optimization

•  You don’t know how users behave – Example: show price early on?

•  Small changes => big results – But which small changes?

•  Use a scientific methodology – Easy to set up – Easy to get report – Statistical significance

From Code to Product Lecture 10 — Analytics— Slide 33 gidgreen.com/course

Page 34: Analytics and Optimization 2013

Wording example

From Code to Product Lecture 10 — Analytics— Slide 34 gidgreen.com/course

Sour

ce:

http

://w

ww

.dus

tinc

urti

s.co

m/

you_

shou

ld_f

ollo

w_m

e_on

_tw

itte

r.ht

ml

Page 35: Analytics and Optimization 2013

A/B testing

•  Two parallel variations – Current vs challenger

•  Assign randomly and evenly – What about previous visitors? – Repeat requests within a session?

•  Set test length in advance – Length of time or number of visits

•  Chi-squared (or similar) test

From Code to Product Lecture 10 — Analytics— Slide 35 gidgreen.com/course

Page 36: Analytics and Optimization 2013

Contingency table

Product purchased

Not purchased

9 575

13 563

From Code to Product Lecture 10 — Analytics— Slide 36 gidgreen.com/course

Page 37: Analytics and Optimization 2013

Multivariate testing

From Code to Product Lecture 10 — Analytics— Slide 37 gidgreen.com/course

Sour

ce:

http

://w

ww

.get

elas

tic.

com

/tes

ting

-pa

rt-1

/

Page 38: Analytics and Optimization 2013

Multivariate testing

•  Best to use third-party tool •  Full factorial vs partial factorial

– Certainty vs efficiency

From Code to Product Lecture 10 — Analytics— Slide 38 gidgreen.com/course

Page 39: Analytics and Optimization 2013

Optimization pitfalls

•  Preconception driven – Too many similar tests – Checking before it’s done

•  Wrong goal – e.g. started vs completed purchases

•  Unfair test – Different time periods – New vs returning users

From Code to Product Lecture 10 — Analytics— Slide 39 gidgreen.com/course

Page 40: Analytics and Optimization 2013

More complex tests

•  Non-binary outcomes – Size of purchase, length of stay

•  Cohort / longitudinal tests •  Whole-site multivariate testing •  Pricing

– How to prevent a riot?

•  Spot diminishing returns – Focus on registration, payment, etc…

From Code to Product Lecture 10 — Analytics— Slide 40 gidgreen.com/course

Page 41: Analytics and Optimization 2013

Lecture 10

•  Introduction •  Data collection •  Website metrics •  Optimization •  Competitive intelligence •  Surveys •  Tools and books

From Code to Product Lecture 10 — Analytics— Slide 41 gidgreen.com/course

Page 42: Analytics and Optimization 2013

Finding competitors

From Code to Product Lecture 10 — Analytics— Slide 42 gidgreen.com/course

Page 43: Analytics and Optimization 2013

Searches for product

From Code to Product Lecture 10 — Analytics— Slide 43 gidgreen.com/course

Page 44: Analytics and Optimization 2013

But…

From Code to Product Lecture 10 — Analytics— Slide 44 gidgreen.com/course

Page 45: Analytics and Optimization 2013

Ranking for general searches

From Code to Product Lecture 10 — Analytics— Slide 45 gidgreen.com/course

Page 46: Analytics and Optimization 2013

App Store searches

From Code to Product Lecture 10 — Analytics— Slide 46 gidgreen.com/course

Page 47: Analytics and Optimization 2013

Online mentions

From Code to Product Lecture 10 — Analytics— Slide 47 gidgreen.com/course

Page 48: Analytics and Optimization 2013

Website traffic

From Code to Product Lecture 10 — Analytics— Slide 48 gidgreen.com/course

Page 49: Analytics and Optimization 2013

Website traffic

From Code to Product Lecture 10 — Analytics— Slide 49 gidgreen.com/course

Page 50: Analytics and Optimization 2013

Downloads/installs

From Code to Product Lecture 10 — Analytics— Slide 50 gidgreen.com/course

Page 51: Analytics and Optimization 2013

Registrations

From Code to Product Lecture 10 — Analytics— Slide 51 gidgreen.com/course

Page 52: Analytics and Optimization 2013

Revenue

From Code to Product Lecture 10 — Analytics— Slide 52 gidgreen.com/course

Also: UK private companies

Page 53: Analytics and Optimization 2013

Revenue

From Code to Product Lecture 10 — Analytics— Slide 53 gidgreen.com/course

$200k

Page 54: Analytics and Optimization 2013

Lecture 10

•  Introduction •  Data collection •  Website metrics •  Optimization •  Competitive intelligence •  Surveys •  Tools and books

From Code to Product Lecture 10 — Analytics— Slide 54 gidgreen.com/course

Page 55: Analytics and Optimization 2013

Why surveys?

•  Customer feedback en masse –  Initiated by you (email/web) – Avoid vocal minority

•  Understand market – Job descriptions – Size of company – Use of product

•  How did you find me?

From Code to Product Lecture 10 — Analytics— Slide 55 gidgreen.com/course

Page 56: Analytics and Optimization 2013

Why surveys?

•  Help with strategic decisions – Premium offerings – Major new versions

•  Customer satisfaction – Quantify word of mouth

•  Understand abandonment – But hard to motivate response

•  Open-ended feedback

From Code to Product Lecture 10 — Analytics— Slide 56 gidgreen.com/course

Page 57: Analytics and Optimization 2013

Sources of bias

•  Non-response bias – Busy customer ≠ bad customer

•  Response bias – Word questions objectively

•  Predictions vs facts – Would you pay? How much?

•  Snapshot in time – Lots of data vs ongoing data

From Code to Product Lecture 10 — Analytics— Slide 57 gidgreen.com/course

Page 58: Analytics and Optimization 2013

Getting users to survey

•  Prominent link in product •  Prize giveaway •  Response to support email •  Mass mailing •  Cold calling •  Bias bias bias ...

From Code to Product Lecture 10 — Analytics— Slide 58 gidgreen.com/course

Page 59: Analytics and Optimization 2013

Good survey design

•  Keep it short! – Focus on objectives

•  Minimize burden on user – Easy questions, especially at start – Multiple choice

•  Make it feel anonymous – Social desirability bias

•  Free text at end

From Code to Product Lecture 10 — Analytics— Slide 59 gidgreen.com/course

Page 60: Analytics and Optimization 2013

Bad questions

When did you last go online and buy something?

Would you buy our superior product?

Are you willing to pay for things online?

If we created a reliable and bug-free product which had all of the features that you requested in

response to the questions in this survey, would you be willing to pay us $10 per month for it?

What are you looking for?

From Code to Product Lecture 10 — Analytics— Slide 60 gidgreen.com/course

Page 61: Analytics and Optimization 2013

Analyzing survey data

•  Manual review – At least for free text field

•  Histograms •  Pairwise correlations

– Especially against price

•  Clustering –  Identify price points – Decide who is worth serving

From Code to Product Lecture 10 — Analytics— Slide 61 gidgreen.com/course

Page 62: Analytics and Optimization 2013

Pairwise correlation

From Code to Product Lecture 10 — Analytics— Slide 62 gidgreen.com/course

R² = 0.04028

0

1

$0 $20 $40 $60 $80

Mul

tipl

e Re

cipi

ents

?

Page 63: Analytics and Optimization 2013

Mini surveys

From Code to Product Lecture 10 — Analytics— Slide 63 gidgreen.com/course

Page 64: Analytics and Optimization 2013

Lecture 10

•  Introduction •  Data collection •  Website metrics •  Optimization •  Competitive intelligence •  Surveys •  Tools and books

From Code to Product Lecture 10 — Analytics— Slide 64 gidgreen.com/course

Page 65: Analytics and Optimization 2013

Analytics tools

From Code to Product Lecture 10 — Analytics— Slide 65 gidgreen.com/course

Page 66: Analytics and Optimization 2013

Other tools

From Code to Product Lecture 10 — Analytics— Slide 66 gidgreen.com/course

Page 67: Analytics and Optimization 2013

Books

From Code to Product Lecture 10 — Analytics— Slide 67 gidgreen.com/course

Page 68: Analytics and Optimization 2013

We didn’t cover…

•  Social media analytics – Popularity – Sentiment analysis

•  Video analytics – Attention – Embeds

•  Content reuse

From Code to Product Lecture 10 — Analytics— Slide 68 gidgreen.com/course