Aller au contenu

En construction · AGPL-3.0

Suivez le chemin, pas la personne.

L’analytics produit open source pour Next.js : pages vues, funnels, rétention et parcours, dans une seule application sur votre Vercel et votre Postgres. Aucun cookie avant qu’un site identifie quelqu’un, et 1,5 Ko dans le navigateur.

Il n’existe pas de version hébergée. Le paquet npm n’est pas encore publié : aujourd’hui, Trailic se lance depuis le dépôt.

//features/pricingsignup/welcome
Une visite inventée, telle qu’un funnel la lit.
L’écran de vue d’ensemble : totaux, pages vues par jour, pages et référents les plus fréquents.
Un vrai écran de l’application. Acme et ses chiffres sont inventés, sur une base de données jetable.
Aucun cookie
Et rien dans le stockage du navigateur, tant qu’un site n’appelle pas identify.
1,5 Ko
Compressé, dans le navigateur. React est sa seule dépendance.
Une application
Next.js et Postgres, sans service cloud que vous ne maîtrisez pas.
/api/mcp
Un serveur MCP, pour qu’un assistant lise les chiffres, avec vos règles.

Comment ça marche

D’une page vue à un chiffre, en quatre étapes.

  1. 1

    Ajoutez un composant

    Une ligne dans votre layout compte les pages vues et les changements de route. track et identify font le reste, quand vous les appelez.

  2. 2

    Les événements attendent

    Le collecteur vérifie la clé, le domaine et les limites, et un événement ne touche jamais la base. Les lots attendent dans Vercel Queues, ou dans un dossier sur un de vos serveurs.

  3. 3

    Postgres, une fois par heure

    Une tâche les écrit par lots, pour qu’une base serverless puisse dormir. Une écriture ratée ne perd rien, et une écriture répétée ne compte rien deux fois.

  4. 4

    Lisez

    Sur les écrans, ou depuis un assistant par MCP. Chaque page dit de quand datent ses données, parce que « maintenant » serait un mensonge.

Ce qu’il montre

Les questions qu’une équipe produit se pose vraiment.

Chacune est un écran de l’application et, sauf les parcours pour l’instant, un outil qu’un assistant peut appeler.

Funnels : où les gens s’arrêtent

De deux à huit étapes, chacune une page ou un événement, et le temps dont les gens disposent depuis la première. L’écran montre combien ont atteint chaque étape, dans l’ordre, et combien s’y sont arrêtés.

Quelqu’un d’anonyme ne peut convertir que dans la journée, parce que son hash change. Identifiez-le et un funnel peut courir sur des semaines.

L’écran des funnels : quatre étapes de la page de tarifs à la page d’accueil, avec des barres qui rétrécissent et l’abandon à chaque étape.

Rétention : qui revient

Des cohortes par le lundi de la semaine où quelqu’un a été identifié pour la première fois, et la part qui revient chaque semaine ensuite, sur toute activité ou sur l’événement de votre choix.

Les personnes identifiées seulement. Un visiteur anonyme est quelqu’un d’autre le lendemain, exprès.

L’écran de rétention : un tableau de cohortes hebdomadaires, chaque case teintée selon la part de personnes revenues.

Parcours : où ils vont ensuite

Depuis n’importe quelle page : la première fois de chaque visiteur sur cette page dans la journée, puis les trois pages suivantes dans la demi-heure, les plus fréquentes d’abord.

Les parcours suivent chaque visiteur qui a atteint la page : c’est le seul écran qui ralentit quand une page devient plus fréquentée.

L’écran des parcours : depuis la page de tarifs, les pages suivantes les plus fréquentes, chaque chemin avec son nombre de visites.

Depuis un assistant

Demandez à votre assistant, avec vos règles.

Le serveur MCP est à l’adresse /api/mcp. Ajoutez-la à Claude, ChatGPT ou tout client MCP comme connecteur distant : le client s’enregistre, vous vous connectez et vous l’approuvez, et chaque outil s’exécute en votre nom, avec les mêmes règles que les écrans.

Modifier ou supprimer un site, effacer quelqu’un et gérer les membres restent sur les écrans : aucun assistant ne peut le faire.

Ceux-ci ne font que lire

  • list_workspacesVos espaces de travail
  • list_sitesSites, domaines, dernière écriture
  • site_overviewLes chiffres d’un site ou d’un espace
  • top_pagesLes pages les plus vues
  • list_eventsLes événements, par jour
  • run_funnelConversion et abandon
  • run_retentionLes cohortes, par semaine

Ceux-ci ajoutent ce que vous avez demandé

  • create_siteAjoute un site, pour qui gère les réglages
  • create_workspaceCrée un espace, pour les admins d’une instance

Vie privée

Ce qui est gardé, et ce qui ne l’est jamais.

Les visiteurs anonymes sont comptés par un hash qui dure un jour sur un site, calculé côté serveur. Cela coûte un peu de précision, et c’est le compromis.

Gardé

  • Le chemin de la page, sans ses paramètres sauf les utm_*, emails et longs jetons retirés
  • L’hôte du référent, sur la première page d’un chargement
  • Un pays, et un type d’appareil, un navigateur et un système
  • Les événements et attributs que votre site choisit d’envoyer
  • Un hash, un par site et par jour

Jamais gardé

  • L’adresse du visiteur : ni le tampon ni la base ne la voient
  • Le user agent
  • Un cookie : aucun n’est jamais déposé
  • Quoi que ce soit dans le navigateur avant identify

Que votre site doive demander le consentement dépend de l’endroit où il tourne et de ce qu’il fait : cette décision vous appartient. Ceci est une information générale, pas un conseil juridique.

Comment fonctionne l’approche de la vie privée

Où ça en est

En construction, clairement.

Fonctionne aujourd’hui
Une première version fonctionne de bout en bout sur une instance de test, avec de vrais navigateurs, un vrai assistant et cinq millions d’événements synthétiques.
Pas encore prouvé
  • Il n’a pas encore collecté de vrai trafic
  • Son tampon Vercel Queues n’a tourné que contre une doublure de ce service
  • Son modèle de données peut changer, sans chemin de mise à jour entre les versions pour l’instant
  • Pas de version hébergée, et le paquet npm n’est pas publié

Ne vous y fiez pas encore comme seul outil d’analytics.

Pas construit
Le replay de session, la capture automatique de chaque clic, les heatmaps, les feature flags et tests A/B, les sondages, la santé des comptes. La liste dans la spécification

Mesuré par le test de charge du dépôt

Vue d’ensemble, plus gros site, 90 jours70 ms
Funnel, trois étapes, 90 jours130 ms
Rétention, 13 semaines150 ms
Écriture de 4 500 lots4 s

5 millions d’événements synthétiques sur 120 jours et 30 sites, sur Postgres 17 limité à un CPU et 4 Go. Des événements synthétiques, pas du vrai trafic.

Questions

Les réponses franches.

Existe-t-il une version hébergée ?

Non, il n’existe pas de version hébergée. Aujourd’hui, vous faites tourner Trailic vous-même, depuis le dépôt.

Puis-je l’installer depuis npm ?

Pas encore : le paquet n’est pas publié. La bibliothèque est dans le dépôt, dans packages/trailic.

Combien ça coûte ?

Trailic n’a ni licence à payer, ni sièges, ni crédits. Vous payez celui qui héberge votre application et votre base, à ses tarifs.

Est-ce que ça veut dire pas de bandeau cookies ?

Trailic ne dépose aucun cookie et ne garde rien dans le navigateur avant identify. Que votre site doive demander le consentement dépend de l’endroit où il tourne et de ce qu’il fait, et cette décision vous appartient. Ceci est une information générale, pas un conseil juridique.

Est-ce que ça ne marche qu’avec Next.js ?

La bibliothèque est faite pour l’App Router de Next.js. Le collecteur est une simple adresse HTTP à laquelle tout navigateur ou serveur peut envoyer, mais le composant qui compte les pages vues est pour React et le routeur de Next.

Faut-il le faire tourner sur Vercel ?

Non. C’est une application Next.js et une base Postgres, donc tout ce qui fait tourner Node convient. Hors de Vercel, vous pointez le tampon vers un dossier sur un disque qui dure et vous appelez les deux tâches selon un planning.

Pourquoi mes chiffres diffèrent-ils de ceux d’un autre outil ?

Un visiteur compte une fois par site et par jour UTC, les robots connus sont exclus, et tous ceux derrière une même adresse avec le même navigateur sont un seul visiteur : c’est une sous-estimation connue.

Sur le blog

Des notes de chantier.

Tous les articles
Ce que donne Vercel Web Analytics, vérifié dans ses docs et ses tarifs en novembre 2026, quand rester, ce qui existe, et pourquoi les chiffres diffèrent.
PostHog, Plausible CE, Umami, Matomo et Trailic comparés sur ce qu’il faut faire tourner : services, bases, licence, minimums. Vérifié en novembre 2026.
Ce que veut dire « sans cookies », comment six outils comptent les visiteurs, ce que chacun perd, et pourquoi cela ne règle pas la question du consentement.

Lisez-le, lancez-le, dites-nous ce qui casse.

Le code est sur GitHub sous AGPL-3.0. Les questions et les bugs vont dans ses issues.