Every two weeks I send out a newsletter containing lots of interesting stuff for the modern PHP developer. You can expect quick tips, links to interesting tutorials, opinions and packages. Want to learn the cool stuff? Then sign up now!

Easily setup and send data to Google Tag Manager in Laravel apps

Google Tag Manager allows you to add tags to your site without editing the site code. A tag, in Google parlance, is a snippet of JavaScript that sends information to a third party, such as… Google.  There are tags to install things like Analytics, Adwords or others on your site .

To use GTM you have to include a small piece of JavaScript on every page, much like what you need to do to install Google Analytics. When installed tags can be added to your site via a great looking interface. As with other Google products there are lots of options which sometimes be confusing. If you want to know more about GTM you read the official documentation.

You can also feed custom data to GTM by sending data through a dataLayer variable in javascript. Check out the developer guide to see what’s possible.

My colleague Sebastian made a great package that makes installing GTM in your Laravel app a breeze. If you just want a basic installation you’ll have to follow the easy install instructions and include a view in your layout.

If you want to use the dataLayer the package provides some handy methods for that. You can even define macros so you can manage the data you want to sent to GTM in one place.

You can read more instructions on how to use the package on GitHub:


Freek Van der Herten is a partner and developer at Spatie, an Antwerp based company that specializes in creating web apps with Laravel. After hours he writes about modern PHP and Laravel on this blog. When not coding he’s probably rehearsing with his kraut rock band.