Tip:
Highlight text to annotate it
X
ANDREW WALES: Hey everyone.
Welcome to "Behind the Code."
Today, we're going to be talking all about the Universal
Analytics Upgrade.
And to do that, we're going to go right to the source.
We have Nick Mihailovski joining us in the studio.
He's the product manager who's been working on the Universal
Analytics Upgrade tool, working tirelessly
to bring this upgrade to all of our users.
So thanks for joining us, Nick.
NICK MIHAILOVSKI: Yeah, thanks for having me here.
ANDREW WALES: Cool.
Let's take a look at the agenda.
So Nick's going to give us an overview
of what Universal Analytics is.
Second thing we'll do is we'll go
through an overview of the upgrade itself.
So what is it, why we're doing it,
and just generally what the steps are,
so you know a little bit more about that.
Next, we'll cover some common questions.
We've been getting a lot of questions
from developers about how to use our upgrade tool, what
that process looks like.
Also questions about implementation and code,
so we'll go through that as well.
And Nick will give us some tips and great context
along the way.
And then at the end, we'll give you some resources
that you can go to after the video.
So if you have questions or want to find out more
about a particular topic of the upgrade,
you can check out the resources and learn more.
Let's start at a super high level.
For those who haven't heard of it before,
what is Universal Analytics, Nick?
Can you give us an overview?
NICK MIHAILOVSKI: That's a great question.
Universal Analytics is huge, right?
It's universal.
ANDREW WALES: Right.
NICK MIHAILOVSKI: So let me try to contain it down
into something really basic.
So in the past, Google Analytics has
been about tracking websites and web pages.
So over the past 15 years, we've seen
a huge increase in mobile content consumption,
consumption across tablets, and even content being distributed
across many other factors, like kiosk, game consoles.
And so what we saw is the need to create new infrastructure
within Google Analytics that allows
us to track user behavior across all of these devices.
So we launched last year Universal Analytics
as a set of features and libraries,
as well as infrastructure, to allow us to now enable
businesses to measure how users interact with their business
across all these different devices.
ANDREW WALES: So it's a collection.
You'd say it's some infrastructure changes.
It's also new reports and new features, and also
new libraries, all bundled together.
NICK MIHAILOVSKI: Correct.
All bundled together.
And what really it is is a platform for us
to add additional functionality and features to really help
users better understand how-- or help customers,
help them understand how users are interacting
with their business across all these different environments.
ANDREW WALES: Cool.
OK.
So let's talk about the upgrade then.
So why are we doing an upgrade?
What is it?
NICK MIHAILOVSKI: That's a good question.
When we launched Universal Analytics,
we required users to create brand
new properties, or tracking units.
And so all of the historical data that they had
was still being processed by classic Analytics,
and only new properties were being
processed by Universal Analytics.
So what the upgrade allows people to do
is to actually upgrade their classic Analytics accounts
into Universal Analytics accounts.
And the features are fantastic, because now you
have the ability to get all the power of the new Universal
Analytics while maintaining all your historical data.
So you can still do year over year trends,
month over month trends, pre and post the upgrade.
But you can also take advantage of all the brand new features.
ANDREW WALES: So it's going to be seamless, then, in Reports,
right?
NICK MIHAILOVSKI: Exactly.
ANDREW WALES: Awesome.
Awesome.
How would one upgrade?
NICK MIHAILOVSKI: Well, we try to make
it as simple as possible.
And we boil it down into two easy steps.
The first step is you actually have to transfer processing
from your classic Analytics to Universal Analytics.
And that's done through a tool.
The second step is to actually retag or reimplement
the tracking code to go from the classic tracking library
to the new Universal Analytics library.
Now the second step is optional, but it's highly recommended.
ANDREW WALES: So you don't have to change your code,
but we recommend that you do.
NICK MIHAILOVSKI: You don't have to change it,
but we recommend you do.
ANDREW WALES: And maybe we'll talk a little bit more
about that later when we talk more
about the implementation of code.
NICK MIHAILOVSKI: Sure.
Yeah.
ANDREW WALES: Now one other thing that I wanted to ask you,
because I've gotten a bunch of questions on this--
is there anybody who shouldn't be upgrading right now?
Because a lot of people watching this might have the question,
should I upgrade or should I wait?
Is there anything people should know?
NICK MIHAILOVSKI: It's a great question.
So today there's many features in Google Analytics--
the DoubleClick integration features,
the deal with Remarketing, DoubleClick for Advertisers.
The features that uses the dc.js tracking code,
these features we're still working on
to support them in Universal Analytics.
So if you are using any of these features,
you should wait just a little bit longer
until we have full support for all the features.
So if you're using those, you shouldn't
use the upgrade today.
The other set of users who shouldn't do this upgrade
is if you're not familiar with how you've implemented
to the tracking code, make sure you go to somebody who is more
familiar-- and make sure that there's
no issues with your implementation that will break.
So you want to make sure you spend the time learning
about what this upgrade is and the implications it could have.
Again, there's many people using Google Analytics.
And a lot of them use it in very creative ways.
And so if you are using it in a creative way,
you want to make sure that you know all the caveats involved
to make sure that your upgrade is as seamless as possible,
and there's no risk of data quality issues.
ANDREW WALES: So for example, if you did a really custom
implementation with ga.js on your website,
you're definitely one of the people who we would suggest
would spend a little time upfront to figure out
if anything is going to break when you update.
NICK MIHAILOVSKI: Absolutely.
ANDREW WALES: So let's talk about the upgrade tool.
Because you mentioned there were two steps, right?
You're going to transfer your property using a tool.
And then you can optionally update the code.
NICK MIHAILOVSKI: Yeah.
ANDREW WALES: So this would be step one,
using the upgrade tool.
NICK MIHAILOVSKI: Correct.
ANDREW WALES: What is the update tool?
What do you do?
NICK MIHAILOVSKI: Well, the upgrade tool
starts with an Admin UI in Google Analytics.
ANDREW WALES: I think I have screenshot.
So let me show it.
And then you can give us a--
NICK MIHAILOVSKI: Yeah.
Fantastic.
So the upgrade tool allows you to come into the Admin UI.
There's a new section for upgrading Universe Analytics
Upgrade under each property.
So this happens at the property level.
So if you look at a property column,
you'll see a new tab for the upgrade.
And when you click on that, you'll
actually be able to go and get to a page that takes you
through a series of steps to transfer processing
from classic to Universal Analytics.
So what you do is you come into the tool.
You accept it.
You look through the information.
Read all the documentation.
When you're ready, you click to next stage.
You get a dialog sharing kind of all the little caveats
and details.
And once you've agreed and you confirm,
we actually schedule your property to be transferred.
Now the transfer actually takes between 24 and 48 hours.
And so you can actually come back--
you'll see a little state changed.
This says transfer in progress.
And actually, under the tab for Universal Analytics Upgrade,
it'll say transfer in progress.
So you could always revisit to see where you are
and what stage you're at.
Once we've finally transferred after that time,
then it'll be saying transfer complete.
And so that means once the transfer is done,
you've completed step one of the upgrade process.
ANDREW WALES: I click the Transfer button.
I'm going to wait 24 to 48 hours.
Check my account.
And it's going to give me a notice that
says it's done, right?
NICK MIHAILOVSKI: It's that easy.
ANDREW WALES: That easy.
Cool.
So during that time, can I still send data?
NICK MIHAILOVSKI: You can continue to send data.
But during the time, you should not
retag to the new tracking code.
You need to make sure that you complete step one, which
is the transfer processing, before you move
to step two, which is the actually
reimplementation of tracking code.
ANDREW WALES: Otherwise?
NICK MIHAILOVSKI: If you don't do that,
it could lead to data quality issues.
ANDREW WALES: So transfer, wait until we confirm
it's been done in your account, and then you
can change your code if you want to in step two.
NICK MIHAILOVSKI: Exactly.
ANDREW WALES: So I've gotten this question
from a number of users who don't actually
see the upgrade tool in their account.
Is there any reason why someone out there
today would not see the upgrade tool?
And how do they get to see it, I guess.
NICK MIHAILOVSKI: It's great.
So we whitelisted or enabled this upgrade tool
for pretty much all of the different accounts
and the properties within.
The only properties and accounts we haven't enabled it for
is for properties or profiles that
are using any of our DoubleClick integration features.
For example, Remarketing or DoubleClick for Advertisers.
If anybody's enabled these features,
we've explicitly not enabled this tool
for any of the profiles within their account.
And the reason why is that we want
to be extra careful because we don't have full feature
support for these features in Universal Analytics.
We're still working on them.
ANDREW WALES: Like Remarketing and DoubleClick stuff.
NICK MIHAILOVSKI: Exactly.
Right.
Because we don't have the full feature support for that.
We don't want to have somebody accidentally upgrade
their account to something that they can't use.
So for those properties, if you don't see this today,
don't worry.
We're just ensuring that there will
be no issues when we actually do enable it for them.
ANDREW WALES: Got it.
And for accounts that have a lot of users,
how do you know if somebody else may have already upgraded
your property?
NICK MIHAILOVSKI: What you can do
is always come into the Property column.
And you'll look at the Universal Analytics Upgrade tab.
And you'll always get the status of where
you are, whether the transfer is in progress, or if it hasn't
been done, or if it's complete.
ANDREW WALES: So it's in the Admin section.
Look at the Property column, Universal Analytics Upgrade
tab.
NICK MIHAILOVSKI: Exactly.
Yeah.
ANDREW WALES: So now let's talk about step two
of the upgrade process, which is actually updating your code.
So you mentioned that updating the code
is actually optional, right?
Step one, transfer your property.
But step two is optional.
NICK MIHAILOVSKI: Right.
ANDREW WALES: Why wouldn't you update your code?
Or what do you get from updating your code?
NICK MIHAILOVSKI: Right.
In Universal Analytics, when we launched that, we also
announced a new tracking code that
works with Universal Analytics, analytics.js.
ANDREW WALES: For web.
NICK MIHAILOVSKI: For web, yes.
And so the analytics.js library is a lot more flexible
for developers.
So if you are customizing the code,
it's a lot easier to customize.
And there's a lot more functionality built
to simplify the customization.
So customization is a big thing.
The second part of it is for large websites.
For example, with the new tracking code,
we only use one cookie.
The old tracking code, we used five cookies.
And so because cookies are sent with all the different requests
on the page, you actually can reduce a significant amount
of bandwidth for large sites as well.
And finally, I think the most important reason
is that we have a bunch of new features
we're working on with Universal Analytics.
We've announced some, like User-ID.
These type of features will only work with the new tracking
code.
And increasingly, we've kind of have a team mandate
that all new features are built only using Universal Analytics.
So increasingly, we can't talk about them here,
but we are working on many new features that will only
be supported by the new Analytics.js tracking library.
ANDREW WALES: So if you want access
to the latest and greatest stuff,
use Analytics.js and upgrade your code.
NICK MIHAILOVSKI: Right.
ANDREW WALES: Can you give us just an overview of the changes
that you would need to make as a developer
if you kind of had a simple site and a simple implementation
of ga.js.
What would you need to do to get to Analytics.js?
NICK MIHAILOVSKI: Well, the basic implementation
for Google Analytics on a website
is to put a piece of JavaScript on all the pages of your site.
So that piece of JavaScript has changed with Analytics.js.
So at minimum, you'd have to go through all the different pages
of your site and implement the new tracking code.
Replace the old one with the new.
Now for people who are doing more sophisticated
integrations-- they have event tracking, social interactions,
e-commerce-- the actual tracking interface, the actual methods
that you use on the tracking code, have changed.
So what you'll need to do is update all the places
where you're calling the old library with the new methods
that are corresponding to the new library.
ANDREW WALES: Got it.
So for some people with big sites,
this is actually a pretty sizable amount of work, right?
NICK MIHAILOVSKI: Yeah.
ANDREW WALES: Do they need to update everything all at once?
Could you have on a page some old ga.js code
and some new analytics.js code?
NICK MIHAILOVSKI: Well, that's a great question.
So we've designed these libraries to work together,
but there are some caveats.
So for a given page, the tracking
works at a property ID.
So this UA number, UAXXX-Y. And so for one of those properties,
you can only use one tracking mechanism on a given page.
So either using analytics.js or ga.js for a given page.
Now across different pages, we have made these libraries work
together.
So you can have the old tracking ga.js
code on 50% of pages for one property.
And for the other 50%, you could have the new one, analytics.js,
for the same property.
So the problem really arises when
you actually, for the same property, on the same page,
use different libraries.
ANDREW WALES: So for those who are planning on retagging,
you could plan to kind of break it up into chunks.
I'm going to retag 25% of my pages
with analytics.js and so forth and so on.
NICK MIHAILOVSKI: Exactly.
Right.
ANDREW WALES: The problem comes when
you try to get down on the page level
and say, some of the stuff is going to be analytics.js
on this page, the rest is ga.js.
NICK MIHAILOVSKI: Correct.
ANDREW WALES: That's not good.
NICK MIHAILOVSKI: Right.
Exactly, yeah.
And that's for a given property.
Now of course, there's always the sophisticated users
who are using multiple properties
on the same page for rollup reporting or something
like this.
So if you have multiple properties on the same page,
you can use ga.js for one of the properties and analytics.js
for the other property.
The problem arises when it's the same property on the same page
with two different tracking codes.
ANDREW WALES: Is there any reason to dual tag
at this point?
We have the upgrade tools.
So is there any reason that you'd want to dual tag
your site completely with the old code and the new code?
Or is it just time to switch over completely?
NICK MIHAILOVSKI: So dual tagging, what a lot of people
do is they'll have the old legacy ga.js across their site.
And then they'll create a new Universal Analytics property.
And then they'll implement analytics.js
with the new one across their site.
So you're tagging with two properties
because we didn't have this upgrade tool in the past.
Now when people compare the data between the two,
they're always going to see a difference
because the actual sequence of when the actual requests are
sent, the hits are sent to Google Analytics, differ.
So we'll always never see a difference.
So what we recommend for all users, now we have the upgrade,
is to actually go through the upgrade.
Don't dual tag.
Don't create a new Universe Analytics property.
Rather, convert your existing one to Universal Analytics.
And that ensures that the data is the most consistent.
You have the historical data.
And then make sure that you don't have these kind of deltas
between the two tracking codes because they're
firing at a different rate in the browser.
ANDREW WALES: That makes sense.
So for those people who are going to put this off-- which
I don't hold it against them for putting it off.
What happens if they do nothing right now?
So you have ga.js on your website.
It's been working fine.
Let's say you transfer your property over,
but you don't actually upgrade your code.
What happens then?
NICK MIHAILOVSKI: So once you've transferred
to Universe Analytics, you could still
send the data from the old tracking library.
That will continue to work.
Over time, you'll see that more features are
added to the analytics.js library,
so you won't get to take advantage of them.
But we'll still collect the old data and process that.
And we can look a little bit into the timeline, kind of talk
about how this will work out in the long term.
ANDREW WALES: Let's move.
So we just talked about websites and code implementation issues
there.
Let's move to mobile apps.
I think the users out there who are using SDK version
1.0, that's really the library that we're talking about.
Those are the people who are going
to be upgrading, because version 2.0 or higher
are already sending hits to Universal Analytics.
So for those users using version 1.0,
what does the upgrade process look like for them?
Is it kind of the same thing as web?
NICK MIHAILOVSKI: It's similar, but it's different.
So it's important for mobile users to pay attention.
Step one of transferring from classic to Universal Analytics
continues to work.
When you do the transfer, you might
see some small differences in the way
the sessions are calculated.
You might have a lower number of visits to the site.
But there's no way around this.
This is just the way that we're changing
on how sessions are calculated between the old classic
and then to the new Universal Analytics.
So you might see a slight decrease
in the number of visits in your reporting profile.
And that's for transferring on step one.
Once you complete step one, you'll
continue to actually view your data
in Google Analytics as a web profile.
Now when we introduced app tracking last year,
we introduced a brand new data model.
New app tracking Google Analytics.
It was actually really based on Universal Analytics,
but it also came with a new app tracking data model.
Now it's all around screen views.
And in metrics, that made sense for applications.
We also created a whole new set of UI reports specific to apps.
Now those work with SDK 2.0 plus versions,
but they don't work with v1.
It's still using the old page view tracking.
So if you are using v1, you have a couple of options.
One is to continue using the v1 SDK
and viewing your reports in web profiles.
It's the standard web profile.
The second option you have is you can actually upgrade to v2,
change all your code from page tracking to app tracking.
But today, if you view that in Analytics,
you'll actually have to create a new app profile.
And all your data will be in the app profile.
So the issue it becomes is that now all the new data
is in an app profile, whereas all the old data is
in a web profile.
And so the challenge with that is that you actually
can't trend data over time because they're
in different profiles.
So it leads to some reporting challenges.
ANDREW WALES: Got it.
So if you want continuity between the data,
you would complete step one, transfer your property.
Don't upgrade your code.
Still use SDK v1, and keep sending your hits there.
And that will work fine, and everything will be continuous,
just like you'd expect.
NICK MIHAILOVSKI: Correct.
ANDREW WALES: If you wanted to get access to the new reporting
features for apps, all the new stuff
that we've launched for apps, you'd
actually have to create a new app profile or a new app view.
And then upgrade your code and send your data to that.
And that causes the break in continuity.
NICK MIHAILOVSKI: Correct.
ANDREW WALES: So it's a bit of a trade-off.
NICK MIHAILOVSKI: It's a bit of a trade-off right now.
This is something that we're working on.
So by all means, there's no rush to actually retag
to version 2.0.
But we do recommend at least looking at step
one to transfer from classic to Universal Analytics processing.
ANDREW WALES: So step one, everybody can do it.
It's no problem.
NICK MIHAILOVSKI: Everybody can do that today.
It's the retagging where there's a couple considerations.
ANDREW WALES: So we've covered step one and step
two of the upgrade process.
I definitely wanted to ask you more about the timeline,
because I'm sure people are going to be wondering when they
need to actually do this stuff, and what we're doing on our end
as well.
So we've got four phases in this timeline.
This is actually unique because we published our timeline.
NICK MIHAILOVSKI: Right.
Usually, we never publish timelines.
So this something--
ANDREW WALES: Being transparent.
NICK MIHAILOVSKI: Pretty excited that-- we
try to be as transparent as possible.
ANDREW WALES: So we got four phases.
We're in the first phase, right?
NICK MIHAILOVSKI: Correct.
ANDREW WALES: Can you walk us through where we are right now
and where we're going?
NICK MIHAILOVSKI: So phase one was really
the launch and announcement that we can actually
do this upgrade.
Our goal at the end of the day is
to transfer 100% of properties from classic to Universal
Analytics, as well as get everybody
to upgrade and to start only building features on Universal
Analytics.
So we announced the upgrade so people
can migrate from the classic to Universal
Analytics a couple of months ago.
So that's where we are.
Phase two is that we realized many people won't actually
go through this step one, transferring.
So what we plan to do is to start
auto-transferring properties from classic
to Universal Analytics.
So what that means is instead of the end
users going into the interface and Admin Tool
and transferring, we'll manually go in and set
that bit for them.
And then over time, their stuff will
be transferred on the processing side.
ANDREW WALES: So when does that happen?
NICK MIHAILOVSKI: So we've started
with some test accounts.
We'll start ramping up probably within the next month or so.
To start with small accounts-- accounts
that have a much lower risk of having data quality issues.
And then over time, as we get full feature parity,
we'll then start ramping that up to account the larger
accounts, accounts with integrations,
with AdSense, AdWords, the DoubleClick.
And finally, the premium clients will be last in that.
Now phase three is once we have full feature support.
So again, we're missing some DoubleClick features.
Today, Universal Analytics is still in beta.
And it doesn't have some of the premium SLAs.
So our goal is to have one large announcement that actually
takes the Universal Analytics out of beta, has 100%
feature support, full SLA, and the goal
is to do that early next year.
So once we do that phase three, we'll
be ramping up this auto-transferring
of properties much more.
We'll be doing more at a time.
Our final end goal, once we've reached 100% of properties
transferred to Universal Analytics,
is to then enter phase four, which Universal Analytics
becomes the default of Google Analytics.
They become the same thing.
At that point, we will actually announce the deprecation
of the old tracking code, ga.js, as well some of the features
and custom variables.
And so the announcement of the deprecation
really means we'll continue to accept and process the data,
but we'll do so for a minimum of two years.
So after two years, we'll revisit
whether we want to continue doing that,
or we want to make sure that everybody upgrades
to the new tracking code.
ANDREW WALES: Got it.
So auto-transferring.
Nobody's going to be auto-transferred who
is using a feature that we don't yet support, right?
NICK MIHAILOVSKI: Correct.
ANDREW WALES: We're waiting until we have support,
and then we'll start moving those accounts.
NICK MIHAILOVSKI: Right.
A lot of people had concern about that.
We're completely taking that into account.
We're being very cautious on who we transfer.
And only once we have full feature support and everything
works well, will we then start doing it more broadly.
ANDREW WALES: And it sounds like from what
you were saying, when we get to phase four
and we announce the deprecation of ga.js,
there's going to be a minimum two years.
NICK MIHAILOVSKI: Correct.
ANDREW WALES: So from today, you've
got two years plus of using ga.js.
NICK MIHAILOVSKI: Of using ga.js.
ANDREW WALES: And we'll support it.
NICK MIHAILOVSKI: We'll continue to support it.
There is kind of a nuance there.
Some of the more power users are using
a feature called Custom Variables.
Custom Variables was available in ga.js.
In analytics.js, we have something new
called Custom Dimensions.
And there is really no migration between the two.
That being said, if you are sending Custom Variables
and you do transfer processing to Universe Analytics,
we'll continue to process the Custom Variables
in Universal Analytics as a legacy feature.
ANDREW WALES: But you wouldn't get access
to Customer Dimensions unless you upgraded your code.
NICK MIHAILOVSKI: Unless you upgraded the code.
ANDREW WALES: Well, we've covered
step one and two of the upgrade, as well as the timeline.
I just wanted to quick give everyone some resources
that you can go to after watching this video.
So if you want to learn more about how to upgrade,
we have this whole upgrade center that we published.
It's at developers.google.com/analytics/upgrade.
You can go there, and it covers migration paths
for whatever library you're using.
We've documented how to upgrade from there.
So definitely check that out.
If you have any other questions on top of that,
we have a UA upgrade forum that you can check out.
And the link is here on this slide.
And as I mentioned at the beginning,
we're also going to be doing a follow-up Q&A session.
So if you have any questions that we didn't cover today,
and I'm sure there are a bunch out there,
definitely post your questions for our Google Moderator.
And we should have a link to that below this video.
So definitely do that.
And we'll be back in about a month, give or take.
And we'll answer those questions and hopefully
some more as well.
Thanks for joining us.
This has been "Behind the Code," all about the Universal
Analytics Upgrade.
Check us out on G+ as well.
Feel free, as I said, to check out our Upgrade
Center as well if you want to learn more.
We'll catch you next time.