Tito Documentation

Anything out of place? Please get in touch!!

Using Google Analytics with Tito in the traditional way as documented below is deprecated, and will either not function correctly, or it will only function unreliably. This is due to browser security updates in the years since we implemented this, and also due to limitations with cross-site tracking.

Our new widget (V2) allows you to track purchases from the Tito widget right on your own website. Visitors never leave your domain, so there are no cross-domain tracking issues, and the same instance of Google Analytics is used to track page views on your website.

We’re leaving the below documentation for posterity until V2 completely replaces V1, but if you're using Google Analytics to track purchases on Tito, please migrate to V2.

Read our latest guide to Google Analytics

Google Analytics (deprecated)

You can add your Google Analytics Tracking ID to Tito so that you can track visits and purchases on your Google Analytics account.


Use analytics.js

The Tito Google Analytics integration uses analytics.js, which is the newer, more flexible implementation. If you are using the older ga.js on your site, you can still add your tracking ID, but the data you collect may not be reliable. We recommend that you update to analytics.js.

Enable eCommerce tracking

The Tito Google Analytics integration makes use of the enhanced eCommerce tracking feature. In your Google Analytics account, go to Admin, then under View for the property that you want to enable tracking for, choose eCommerce Settings. Make sure that both the Ecommerce and Enhanced Ecommerce settings are switched to on.

If you want to add a funnel step, there is only one: the credit card form. You can name this “Register form” for example so that it shows up as such in reports.

Enable the linker plugin on your site

If you want to track requests that go from your site to the Tito event homepage, you’ll need to enable the Google Analytics linker plugin. Replace your Google Analytics code with the following, making sure to fill in your details:

  // replace the sample tracking ID below with your Google Analytics Tracking ID
  var googleUA = "UA-XXXXXXXX-X";

  // replace XYZ.com with your domain, and add in any other domains that you’d like to track requests across
  var googleDomainList = ["XYZ.com", "ti.to"];

  // no more replacements

  (function (i, s, o, g, r, a, m) {
    i["GoogleAnalyticsObject"] = r;
    (i[r] =
      i[r] ||
      function () {
        (i[r].q = i[r].q || []).push(arguments);
      (i[r].l = 1 * new Date());
    (a = s.createElement(o)), (m = s.getElementsByTagName(o)[0]);
    a.async = 1;
    a.src = g;
    m.parentNode.insertBefore(a, m);

  ga("create", googleUA, "auto", { allowLinker: true });
  ga("require", "linker");
  ga("linker:autoLink", googleDomainList);
  ga("send", "pageview");

Your Google Analytics account is now ready.

Set up Google Analytics in Tito

In Tito, go to Customize -> Services, and add your Google Analytics tracking ID.

The Google Analytics integration looks like this:

  1. When a customer lands on your event homepage, we’ll send a pageview event, prefixed with “/tito”, so for example, if your event URL was /ultimateconf/2013, we’d send “/tito/ultimateconf/2013”
  2. After a customer chooses their tickets, we’ll send an event (category: tito, action: registration:started), along with an eCommerce request that sends details of the tickets they chose
  3. When a customer begins filling their details, we’ll send an event (category: tito, action: registration:filling)
  4. When the registration is finished, but tickets haven’t been filled out yet, we’ll send an event (category: tito, action: registration:finished), and we’ll send an eCommerce request to notify Google that a purchase went through.
  5. When the registration is complete, we’ll send “registration:finished” event

You can use these events to configure custom goals if you like, but Google’s eCommerce tracking should be enough to get you started with conversion tracking.

Note For a variety of reasons, not every transaction will necessarily be tracked in Google Analytics. Some users may have disabled tracking, some browsers may not support some of the techniques we’ve used to integrate, and some browsers may have JavaScript disabled altogether. That said, the vast majority of transactions should show up.

Enable Google Analytics if you’re using our widget

Since our widget uses an embedded iframe, any hits to the widget will be recorded in a separate session, unless you explicitly pass the linkerParam from the Google Analytics Linker plugin. Here is a snippet to do that:

<script type="text/javascript">
  window.titoWidgetCallback = function () {
    TitoWidget.build_widgets = false;

You should paste the above code after your Google Analytics loading code. It should work with both in both async or non-async mode for both libaries.

If Google Analytics isn’t loaded when the widget is being built then it will wait for up to a second before giving up and building the widget anyway. This can happen if the browser is blocking Google Analytics. If you want to tweak that timeout then you can pass in a value in milliseconds:

TitoWidget.buildWidgetsWithGoogleAnalytics({ timeout: 2000 });

If you ever need some help, don't hesitate to contact us…