Setup Google Analytics to Modern SharePoint from any platform
Google Analytics is a web analytics service offered by Google that tracks and reports website traffic. SharePoint provides some reports too, but these ones can be quickly insufficient if you need more KPI.
Previously, on the classic experience of SharePoint, it was possible to add Google Analytics script by:
- Creating a Master Page and including the script (it was not a Best Practice by the way 🤭)
- Creating a Custom Action 👍🏻
Fast forward to today, modern SharePoint experiences support the most common scenarios that organizations use SharePoint for. Many organizations have already switched to using modern experiences, and many more are evaluating how they would benefit of modernizing their intranets.
That is totally true! How to visualize in real-time or through a complete dashboard several native and custom KPI?
In addition, you can access several features for FREE 💸.
Google Analytics for Modern SharePoint - for everybody
So, now... How to set up this solution for your Modern SharePoint sites? This subject has already been addressed in the post of Joao Ferreira.
What can I bring more to that?
- Upgrade his solution to use the latest version of SharePoint Framework
- Perform some enhancements
- Allow you to deploy the solution from any platform thanks to Office365-CLI. If you too, are a macOS user and working on several SharePoint solutions yourself, you want to have a way to provision Google Analytics, without having to use a VM or a Windows computer
- Create scripts to implement the solution easier
Google Analytics implementation
I wrote two scripts that will allow you to implement the solution easily.
Prerequisites
- Google Analytics Tracking ID: https://support.google.com/analytics/answer/1008080
- Tenant App Catalog or Site Collection App Catalog:
- Configure your Tenant App Catalog: https://docs.microsoft.com/en-us/sharepoint/use-app-catalog
- Configure your Site Collection App Catalog (optional): https://docs.microsoft.com/en-us/sharepoint/dev/general-development/site-collection-app-catalog
- If you choose to use PowerShell solution, you'll need to install the PnP PowerShell module
- If you choose to use any platform solution, you'll need Bash and Office365-CLI
[note]Note
The user account that will perform the following actions has to have sufficient permissions on the target sites collection and on the App Catalog.
PowerShell (Windows only)
- Download the PowerShell solution from the repository
- Unzip the package
- From your PowerShell terminal, connect to your target site collection with
Connect-PnPOnline
cmdletConnect-PnPOnline -Url https://contoso.sharepoint.com/sites/target-site
- Launch the
setup.ps1
.\setup.ps1 -siteUrl https://contoso.sharepoint.com/sites/target-site -trackingID 'UA-000000000-1'
[note]Note
If you can't execute the PowerShell script, cause of security reason, before unzip the package, execute theUnblock-File
cmdlet.
[note]Note
In this example, the package is deploy to the Site Collection App Catalog. You have other options like illustrated into the README.md, that allow you to manage the deployment.
Any platform (Linux, Mac OS, Windows)
- Download any platform solution from the repository
- Unzip the package
- Allow
setup.sh
script executionchmod +x ./setup.sh
- From your Bash terminal, connect to your target site collection with
spo login
cmdletspo login https://contoso.sharepoint.com/sites/target-site
- Launch the
setup.sh
./setup.sh --siteUrl https://contoso.sharepoint.com/sites/target-site -- trackingID 'UA-000000000-1'
[note]Note
In this example, the package is deploy to the Site Collection App Catalog. You have other options like illustrated into the README.md, that allow you to manage the deployment
Pretty simple, isn't it?
You will find below some additional information about the Google Analytics interface and its configuration (thank you Karen for your suggestion 😉)
Enjoy 💪🏻
Hoping this post will help you 😉