Loading Google Analytics data on Domo

October 07, 2017

Domo is a cloud visualisation tool that offers a wealth of connectors (400+ according to their website) and a simple learning curve.


I thought I'd have a go connecting to the same google analytics account as I did with Qlik Cloud a while ago. This will be using the Domo free tier, which you can use to share up to 50 cards at the time of writing.

Connecting to Google Analytics

1 - Pick the connector you want from the connectors page (there's a lot of choice).

domo 00 connectors

We're using the Google Analytics connector

2 - You're presented with what looks like a four step process, so hit the dropdown and add a new account.

domo 01 connect account

It's a four step process, starting with connecting to your Google Analytics account

3 - We're greeted by the familiar Google account screen, where we approve the request as for any other app.

domo 02 google prompt

Say hello to the standard google prompt

4 - Back at Domo, we can switch between the properties we want to view (in this case withDave), and the reports we want to build. As with the Qlik Sense connector, this selects the dimensions and metrics (measures) that we want to pull down.

domo 03 select data

Domo carries all the standard reports and more

By selecting either a custom or pre-made report, Domo builds the query. Note that the page clearly displays how many dimensions and metrics we are able to load in one query on the left of the page.

Domo clearly displays what selections you've made, and how many more dimensions and metrics you can add

Domo clearly displays what selections you've made, and how many more dimensions and metrics you can add

5 - Next up is defining the date range to load (date range, number of days, or days since last successfully run) and providing any segment and filter information. You can also test the configuration to check it's valid.

domo 06 filters

Domo offers flexible filters and segments

Setting the segments and filter criteria requires you to provide a JSON string containing the fields and values you wish to reduce the data with. This is as per the google documentation on how to build segment and filter requests.

JSON sample to return data where the ga:pageviews metric is greater than 2 (the example provided, although WordPress will ruin the formatting):


6 - Setting up refreshes of the data is simple, and flexible. You can refresh down to 15 minute intervals, specify when refreshes should happen (active hours) and also specify how many times a failed refresh should be retried (up to 10 times).

domo 07 scheduling update

There is good flexibility in refresh scheduling, and the mode offers either append or replace

As the connector offers either append or replace, this realistically offers you two options:

  • If you're running a rolling x day report, then this isn't a problem

  • If you're trying to build up a history and don't want to pull all data daily, then set the data refresh range to "since last successful refresh" and the update mode to "append"

7 - After giving the data set a name, the tool return a summary and sample of the data. I've added filters for a browser, minimum session count and device.

domo 08 data sample

Once you've added a name, you get a snapshot of the data

8 - You now have your dataset loaded and ready to go. From here you can build it into an ETL but we'll be using it on it's own in our cards so don't need to touch that for now.

domo 09 history

You can look at the refresh history, data lineage, linked cards, permissions, or start configuring more advanced properties

There's some attractive visualisations that bring all your data sources onto one page. At the moment, ours is a little sparse.

domo 10 data warehouse

It's in our (very empty) data warehouse!

I'll create a card (and on the Qlik Cloud side, an app to compare it to) to build off of this data in an upcoming post.

Profile picture

From Dave, who writes to learn things. Thoughts and views are his own.

© 2023, withdave.