Contexte
E-commerce mode indépendant, 5M€ de CA annuel, Shopify + Klaviyo + ads Meta/Google. Équipe marketing : 3 personnes + un directeur e-commerce.
Le problème
Données éclatées
- Ventes : Shopify
- Comportement : Google Analytics 4
- Emails : Klaviyo
- Ads : Meta Ads Manager + Google Ads
- Stocks : Shopify
Chaque lundi matin : 2h de compilation manuelle dans Google Sheets.
KPIs métier inexistants
GA4 affiche “utilisateurs” et “pages vues”. Le directeur voulait voir marge brute par collection, CAC par canal, retour sur pub à 30 jours.
Attribution mal faite
Les conversions étaient attribuées majoritairement à “direct” ou “Google organique” dans GA4, alors que les ads payantes portaient la majorité du volume.
La solution livrée
Dashboard unifié
Une seule page avec tous les KPIs métier :
- CA, commandes, panier moyen temps réel
- Marge brute par catégorie, collection, produit
- CAC (coût d’acquisition client) par canal
- LTV (valeur vie client) sur 12 mois
- Taux de conversion par source de trafic
- Stock critique (produits < 5 unités + vitesse d’écoulement)
Attribution multi-touch
Modèle d’attribution custom qui retrace le parcours complet (premier touchpoint → touchpoints intermédiaires → conversion). Chaque canal obtient une fraction pondérée. Réalisation choquante : Meta Ads portait 40% des ventes réelles vs 12% attribuées dans GA4.
Alertes intelligentes
- Baisse du taux de conversion de plus de 15% sur 24h → alerte Slack
- Stock critique sur produits bestsellers → email
- CAC > seuil sur un canal → alerte directeur
Optimisations suggérées
Des “recommandations” générées automatiquement chaque semaine :
- “Baissez le budget Google Ads sur la collection X, ROAS faible”
- “Les clients qui achètent Y ont 3× plus de chances d’acheter Z — bundle ?”
Résultats mesurés à 6 mois
- +18% taux de conversion moyen (optimisations ciblées)
- Budget pub réalloué : +32% de ROAS global
- Temps de reporting passé de 2h/semaine à 0 (tout temps réel)
- Décisions prises 3× plus vite côté direction
Stack technique
- Frontend : Next.js 15 + Recharts
- Backend : Node.js API + PostgreSQL
- Ingestion : Shopify API + Meta Marketing API + Google Ads API + Klaviyo API
- Attribution : logique custom basée sur Markov chains
- Hébergement : Vercel + Supabase EU