Bime v1.97: more Google Analytics goodness, visual SQL builder, date range filters, groups, sets and fixed measure calculations

Bime v1.97 is out! This release was heavily focused on Google Analytics: segmentation and profile aggregations. Nevertheless, we also improved other areas. Tired of writing SQL by hand to create your connection? Welcome to the new SQL builder that allows you to map an entire large database in couple of minutes. We also added the final touch to the calculation engine with the ability to create on-the-fly groups and sets. Last but not least, you can now filter time elements by picking 2 dates from a calendar.

Google Analytics: Profile aggregation

Our Google Analytics connector beta tests were clear about the number one feature people wanted to see: "give us the ability to analyse several profiles at the same time". Well, 2 weeks later, you've now got it! In the connection builder just pick up the profile you want to aggregate and that's it.

In your analysis session, all the results displayed are now the aggregation of all the profiles you selected. Be carefull however, it works really well with additive metrics (visits, pages view etc..) but can be misleading with non-additive ones (avg time on page). For these metrics, you can obviously disaggregate the data with the new "Profiles" dimension to get the details of each profile and compare them easily.

Google Analytics: Segmentation

Dynamic Segmentation was one of the top new features deployed by Google in their API. With Bime 1.97 you'll get full support when it comes to segmentation.

From the Google Analytics blog:

A segment is a subset of your data. Usually, it refers to a subset of visitors whose behavior you would like to see and analyze. For instance, usually you are looking at all visits to your site. You may want to analyze only the "Paid Traffic" or "Visits with Conversions" or "Organic traffic" segments and even compare these segments side by side in reports. Advanced Segmentation allows you to isolate and analyze these subsets of your traffic.

At the first level of support, we grab all the default segments available in Google Analytics. This one was easy, but you also get a special attribute called "All Segments" where we stack all the segments. With this one, you can select any number (limited to 3 in the Google Analytics Interface) of segments to compare them, aggregate them etc...

At the second level of support, we grab all the custom segments defined in your account. When we say "All", it is really "All": your custom segments are now cross-profile and can be applied on profiles where the custom segments were not originally defined.

Finally, at the third level of support: dynamic segments. You can define a new segment at any time that will be stored in your connection and apply it right away in the current state of your analysis. Here is what it looks like: you are deep in an analysis for one of your customers. You discover that a lot of people came through a special page which came from a paid referral souce. Decomposing it by country, you discover that they come from the US, which is the target market of your customer's poduct. Before writing an email to your customer asking him to assign more of his budget to this source, you want to be sure it's quality traffic. A quick and dirty way of doing that is the "time on site" metric. You decide to create a "dynamic segment" that is "ga:timeonsite>5". Instantly, your figures drop dramatically by 80%. What does this mean? That most of the traffic coming from this source doesn't give much value to your customer, as people leave the website less than 5 seconds after they arrived. In a nutshell, with dynamic segments you can filter your data at such a detailed level that it provides context required for your current Q/A session.

Visual SQL Builder

So, you don't want / don't know how to write SQL queries? The new visual SQL Builder is here to help you and save you time! You can now map an entire database easily in your connection.

In the RDBMS connection builder: click on the designer tab and click on the "launch" button.

Now, you just have to select a couple of tables and link them together. To create a link:

Click on one of the four circles around your table: a black arrow appears. Then click on one of the four arrows of the other table that you want to link:

A new window appears where you can edit how you want to link the 2 two tables

Also, please note that you can click on preview at any time to see what the result of your query will look like.

Calculations: Groups

Groups allow you to gather several attribute values into groups. Let say you have "Coca Cola", "Mountain Dew", "Orange Juice", "Pineapple Juice" in your data. You want to create a "soft drink" category ("Coca Cola" + "Mountain Dew") and Fruit Juice ("Orange Juice", "Pineaple Juice") to analyze them together.

Click on the black arrow next to your attribute, and choose "Group":

Calculations: Sets

Sets allow you to select a subset of the data by selecting one or more dimension members that are of interest to you. Once you have created a set, it is stored in the connection. This saves you from having to recreate the set every time you want to use it.

Click on the black arrow next to your attribute, and choose "Set":

Calculations: Fixed Measures

Let say you want to compare your performance against the sales of your best month: June. You can now create a fixed measure that will freeze June's sales allowing you to benchmark and compare your figures against this reference line.

Fixed what? The technical rationale is that most calculations in Bime are "contextualized" by the elements in the query. A Fixed Measure allows you to "de-contextualize" the query and always display the same figure across query elements.

Click on the black arrow next to Measures:

...this will trigger the fixed measure window:

Date range selection

You can now easily filter a range of dates when using time elements in your query.