Laravel

Last updated:

|Edit this page

PostHog makes it easy to get data about traffic and usage of your Laravel app. Integrating PostHog enables analytics, custom events capture, feature flags, and more.

This guide walks you through integrating PostHog into your Laravel app using the PHP SDK.

Installation

First, ensure Composer is installed. Then run composer require posthog/posthog-php to install PostHog’s PHP SDK.

Next, initialize PostHog in the boot method of app/Providers/AppServiceProvider.php:

app/Providers/AppServiceProvider.php
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use PostHog\PostHog;
class AppServiceProvider extends ServiceProvider
{
public function boot(): void
{
PostHog::init(
'<ph_project_api_key>',
[
'host' => https://us.i.posthog.com
]
);
}
}

You can find your project API key and instance address in your project settings.

Usage

To access your PostHog client anywhere in your app, import use PostHog\PostHog; and call PostHog::method_name. For example, below is how to capture an event in a simple route:

routes/web.php
<?php
use Illuminate\Support\Facades\Route;
use PostHog\PostHog;
Route::get('/', function () {
PostHog::capture([
'distinctId' => 'distinct_id_of_your_user',
'event' => 'route_called'
]);
return view('welcome');
});

Next steps

For any technical questions for how to integrate specific PostHog features into Laravel (such as analytics, feature flags, A/B testing, etc.), have a look at our PHP SDK docs.

Alternatively, the following tutorials can help you get started:

Questions?

Was this page useful?

Next article

Next.js

PostHog makes it easy to get data about traffic and usage of your Next.js app. Integrating PostHog into your site enables analytics about user behavior, custom events capture, session recordings, feature flags, and more. This guide walks you through integrating PostHog into your Next.js app using the React and the Node.js SDKs. You can see a working example of this integration in our Next.js demo app . Next.js has both client and server-side rendering, as well as pages and app routers. We…

Read next article