Setting up an Analytical Dashboard in Real-Time with Geckoboard and Raspberry Pi

Julien Le Coupanec
Hackisition
Published in
9 min readFeb 5, 2020

As stated in one of my other articles, a growth hacker devotes a large part of his agenda to studying multiple graphs and analysing the data found. The goal is to find amongst other things where the value of the product is (while reducing the friction at the same time), the attributes which will determine your power users, the actions that will influence retention, the most profitable acquisition channel etc.

Installing a data-driven culture in a startup is in my opinion one of the first things to sort out as a CEO. Determining your KPI’s and making them easy to access throughout your organisation is one of the best ways to show whether there is a progress and to influence day to day decisions for everyone (notably concerning the iteration around the product). As long as your team has a precise vision on the things that count, it will have a direct impact on the execution. And while we are on this subject, analysis dashboards are a formidable tool (I recommend using Mixpanel and Google Analytics at least). ”

An overview of what you can do with Geckoboard.

Nevertheless, sometimes it is handy to present on one screen real time data from different sources (Mixpanel, Youtube, Facebook, Twitter, Bitly…). If one day you are in need of a solution, it is easy to use Geckoboard. For 50$ a month, this tool allows you to directly connect to the most popular API’s and to make with just a few clicks an interface which includes all of your most important data (the image opposite). In this article, you will have to create a dashboard and show it on a screen inside your startup thanks to a Raspberry Pi.

I still see too many startups which develop on their own their analysis system. This can sometimes be smart if you reached a certain size or if your growth/business model do not allow you to get a reasonable price on Mixpanel (and in this case, the smartest solution is to negotiate directly with their support). But as you are at an early-stage, for pity’s sake, don’t stupidly waste your most precious resource: Time. It is critical to use already existing blocks to quickly move forward. Restrain yourselves from falling into something that I call the developers’ syndrome.

#1. Constructing and organizing a Geckoboard.

The first thing to do is to create an account on Geckoboard. You are given a complete 30 day trial for free in which there are no payment commitments (you don’t even need to give your credit card details). Fill in correctly the different requirements and submit.

As soon as your account has been confirmed, you will be redirected towards your dashboard. By clicking on « Add Widget » in the top right corner, you can select a platform and show something you created using this. The size as well as the position for these different widgets is adjustable. It is also possible to set an objective on some of these or to show the performance according to a certain period. Don’t forget that Geckoboard also has an API to show data that comes from platforms that are not yet available.

Concerning how you organize your Geckoboard, one of the core principle is to save time by taking a step back to look at your current situation from every perspective. Keep the top left part of the screen for Mixpanel, the right hand side for Google Analytics and the bottom for YouTube… You must be logic and rigorous, as the aim of this dashboard is to get a quick overview of what happened and comparing your data. It can also be useful to put together all of the other things that may have a link together (so you are more able to see a correlation for example).

You must also be dynamic and flexible. If it is necessary to delete or to add new metrics according to your current objectives, then do it. Let’s take an example, for instance in the case of redesigning a homepage, it could be interesting to show the new conversion ratio for signing up (by comparing it with the last one). Geckoboard is malleable and everything can be set up easily, so make use of this.

“ This does not mean that you must neglect anything in your choice of what you show. It is often tempting (especially at the start) to try and completely fill-up your Geckoboard. But don’t forget that it is sometimes worth leaving empty spaces rather than mixing up lots of metrics that are not key to performance (or even worse, vanity metrics). These widgets are there to send messages to your team and to guide them in their decisions. Not for sinking them in unrelated information. Concerning KPI’s, I recommend tracking between 3 and 5 things and to name them correctly. ”

#2. Showing your Geckoboard on a TV thanks to a Raspberry Pi.

As soon as your Geckoboard is correctly set up, the important thing is to make your content visible and easy to access. And to do this, what is better than showing it on a TV in the middle of your startup?

The Raspberry Pi 2 Model B

For less than $100;, it is possible to get a Raspberry Pi II and all the accessories needed to implement the system. Here is what you will need :

  • A Rasberry Pi 2 .
  • A protective case for the Raspberry (I strongly recommend it) .
  • A mains adapter with a micro-USB .
  • A microSD card .
  • A USB WiFi stick (unless you prefer connecting your Raspberry via Ethernet cable).
  • A HDMI cable to connect your Raspberry Pi to your TV.

These products are available to purchase separately but to save time; I recommend this complete Rasberry Pi kit found on Amazon. If you don’t have a keyboard or a mouse at your disposal, you can also order these. The two peripherals are obviously essential to control your Geckoboard.

“ Multiple reasons persuaded me to opt for a Raspberry Pi 2. First of all, the price is very attractive (for less than $100, you have a machine that is highly capable of doing the job). Secondly, its little size allows you to hide it out of sight behind the television quite easily, which gives you a nice look to the installation. On the other hand, the Raspberry has frozen on me so I needed to restart it. Anyway this is rare but it is probably the reason why Geckoboard recommend using an Asus Chromebox. Installing this device is easier because you literally have nothing to do apart from configuring it but you will have to pay more than $200 to get one. Find out more with this article.

#2.1. Formatting the microSD and installing NOOBS.

The first thing to do is the format your microSD so you can install Raspian (the operating system for Raspberry which is based on Debian). We will need to copy NOOBS (New Out Of The Box Software) on it, with the objective being to facilitate the boot up of the installation of your Raspberry.

If you are a Mac user, download SDFormater. This little application allows us to correctly format our microSD card. For those that use Windows, I will leave you to your own devices to do your own research for this.

Connect your microSD to your Mac :

  • Select the card that you have just connected .
  • Select « Overwrite Format » .
  • Enter an appropriate name for your MicroSD (like the name of your startup).
  • Click on the button « Format ».

“ The formatting process can take a few minutes depending on your computer. ”

All that is left to do is to copy NOOBS to the root of your microSD. For this, download this here, decompress the file then copy its content onto your newly formatted microSD. Be careful, and do not move the folder NOOBS itself onto your card, it’s the contents that must be at the root of this (see the image below). Eject it now to finish correctly. We will now start installing your operating system on to your Raspberry.

#2.2. Installing your operating system onto your Raspberry.

Connect your keyboard and your mouse to the numerous available USB slots as well as the HDMI cable to your Television. Hook up your Ethernet cable or your WiFi stick. Place your microSD in its slot and connect your Raspberry to the mains thanks to your adapter delivered with the kit. NOOBS will automatically start up and the interface below should appear on your television.

This is where it is possible to configure your Raspberry for different operating systems. Select Raspian, change the language on your keyboard to French (to not have a QWERTY keyboard) then click on « Install ». Wait for a few minutes to let it install. You will be alerted by a pop-up when your system is ready. Your Raspberry PI will reboot automatically and it will be time to start your first configurations.

#2.3. Configuring your Raspberry.

When it’s rebooted, you will be taken to a page concerning configuration and different other tools. Use the TAB key to navigate between the different sections. In general, I leave everything on default and then click « Finish ».

You will still be able to access later on this panel by entering the following command in your terminal:

raspi-config

“ Be careful, unless you have already changed it using this interface, the default login is « pi » and the password is « raspberry ». Remember this because you might be asked to type it quite often (for every reboot notably). ”

If no error comes up, you will now be able to access your terminal. It is here that you will be able to do the majority of your experiments. If you are at ease with the graphic interface, remember that at any given moment it is possible to switch to this by typing the following instruction :

startx

We will now update your different packages then install chromium (a light browser which will allow us to view your Geckoboard on the screen without having a navigation bar).

sudo apt-get update

sudo apt-get upgrade

sudo apt-get install chromium

So that your screen doesn’t go into Standby after a certain amount of time, we will now install xscreensaver.

sudo apt-get install xscreensaver

Turn on your graphic interface with startx, when you get to the menu « Start > Preferences > Xscreensave », and deactivate the standby.

#2.4. The display of your Geckoboard.

Go back to your terminal, we will now be able to start up your Geckoboard. Each dashboard contains a URL only accessible in the reading only mode, this is the one that I recommend in general to load. It is possible to recover by clicking on the on tab « Share ».

It is now time to display your Geckoboard. Boot up the last command chromium below and the turn is played.

chromium --kiosk https://[your].geckoboard.com/dashboard/[yourID]

#2.5. Time to show off.

To conclude and this is the essential part, remember that giving visibility to the numbers that count, improves on the one hand the quality of discussions that your teammates could have between them but helps them especially day to day in detecting the actions that have an impact from those that do not. You save a lot of time in the visualisation but also in the interpretation. And in this race against time, this is a competitive advantage which is priceless. Once again, execution is key.

I hope that this tutorial was useful and improves your execution, do not hesitate in sharing this article on social media or to subscribe to my newsletter below. 🙂

--

--

Julien Le Coupanec
Hackisition

Writing about Growth Hacking, Vue & Frontend development. Formerly @_TheFamily.