Popups & Lead Capture

Quel est le délai idéal pour afficher un popup ?

Entre 30 et 60 secondes, ou après 50% de scroll. Un popup trop rapide (< 10s) augmente le rebond de 25%. Préférez les déclencheurs comportementaux au temps.

La réponse courte

DéclencheurRecommandation
Temps30-60 secondes
Scroll50% de la page
Exit-intentQuand le visiteur part
Pages vuesAprès 2-3 pages

Meilleure approche : Combiner plusieurs déclencheurs plutôt qu’un délai fixe.

Impact du timing sur les conversions

Données comparatives

Délai d’apparitionTaux de conversionTaux de rebond
Immédiat (0s)0.5-1%+30%
5 secondes1-2%+20%
10 secondes2-2.5%+10%
30 secondes2.5-3.5%+5%
60 secondes3-4%+2%
Exit-intent2-4%+0%

Pourquoi le timing compte

Popup trop tôtPopup au bon moment
Visiteur n’a pas vu le contenuA eu le temps d’évaluer
Ne connaît pas la valeurComprend ce que vous offrez
Réaction de défenseRéceptif à l’offre
Ferme et partPlus susceptible de convertir

Stratégies de déclenchement

1. Délai temporel

// Après 30 secondes
setTimeout(() => {
  showPopup();
}, 30000);

Avantage : Simple à implémenter Inconvénient : Ne tient pas compte du comportement

2. Déclenchement au scroll

// Après 50% de scroll
window.addEventListener('scroll', () => {
  const scrollPercent = (window.scrollY / documentHeight) * 100;
  if (scrollPercent >= 50 && !popupShown) {
    showPopup();
    popupShown = true;
  }
});

Avantage : Montre que le visiteur est engagé Inconvénient : Pas applicable aux pages courtes

3. Exit-intent

// Quand la souris sort de la fenêtre
document.addEventListener('mouseout', (e) => {
  if (e.clientY < 10) {
    showPopup();
  }
});

Avantage : N’interrompt pas l’expérience Inconvénient : Pas tous les visiteurs le voient

4. Nombre de pages vues

// Après avoir vu 2 pages
const pageViews = parseInt(sessionStorage.getItem('pageViews') || 0) + 1;
sessionStorage.setItem('pageViews', pageViews);

if (pageViews >= 2) {
  showPopup();
}

Avantage : Visiteur clairement intéressé Inconvénient : Exclut les visites single-page

5. Combinaison intelligente

function shouldShowPopup() {
  const timeOnPage = getTimeOnPage();
  const scrollPercent = getScrollPercent();
  const pageViews = getPageViews();

  // Afficher si :
  // - Plus de 30s ET scroll > 30%
  // - OU plus de 2 pages vues
  // - OU exit-intent détecté

  return (timeOnPage > 30 && scrollPercent > 30)
         || pageViews >= 2;
}

Timing par type de page

Homepage

DéclencheurValeur
Temps minimum20-30s
Scroll40-50%
AlternativeExit-intent

Page produit (e-commerce)

DéclencheurValeur
Temps minimum45-60s
Scroll60-70%
AlternativeExit-intent sur panier non finalisé

Article de blog

DéclencheurValeur
Temps minimum60-90s
Scroll50-70%
AlternativeInline après 50% du contenu

Landing page

DéclencheurValeur
RecommandationExit-intent uniquement
Temps si nécessaire60s+
ScrollAprès avoir vu les témoignages

A/B tests de timing

Tests recommandés

TestCe qu’il révèle
10s vs 30s vs 60sDélai optimal
Scroll 30% vs 50% vs 70%Engagement minimum
Temps vs ScrollMeilleur déclencheur
Simple vs CombinéComplexité justifiée ?

Métriques à comparer

  • Taux de conversion du popup
  • Taux de rebond global
  • Temps moyen sur page
  • Pages par session

Règles de fréquence

Le timing inclut aussi la répétition :

RègleParamètre recommandé
Par session1 fois maximum
Après fermeturePas avant 7-14 jours
Après conversionNe plus jamais
Après 3 fermeturesArrêter définitivement
function checkFrequencyRules() {
  // Déjà vu cette session ?
  if (sessionStorage.getItem('popupShown')) return false;

  // Fermé récemment ?
  const lastClosed = localStorage.getItem('popupClosed');
  if (lastClosed && daysSince(lastClosed) < 14) return false;

  // Déjà converti ?
  if (localStorage.getItem('popupConverted')) return false;

  // Fermé 3+ fois ?
  const closeCount = localStorage.getItem('popupCloseCount') || 0;
  if (closeCount >= 3) return false;

  return true;
}

Timing mobile vs desktop

Desktop

  • Exit-intent fonctionne bien
  • Délai 30-60s approprié
  • Scroll tracking précis

Mobile

  • Exit-intent complexe (pas de mouvement souris)
  • Préférer déclenchement au scroll
  • Éviter les full-screen (pénalité Google)
  • Alternatives : slide-in, barre bottom
const isMobile = window.innerWidth < 768;

if (isMobile) {
  // Scroll-triggered sur mobile
  triggerOnScroll(60);
} else {
  // Exit-intent sur desktop
  triggerOnExitIntent();
}

Checklist timing popup

  • Délai minimum de 30 secondes
  • Déclencheur comportemental (scroll, pages) préféré
  • Exit-intent comme alternative/complément
  • Une seule fois par session
  • Pas de réapparition avant 7+ jours si fermé
  • Ne jamais réapparaître après conversion
  • Timing adapté mobile vs desktop
  • A/B test effectué sur le délai

Besoin d'aide pour optimiser vos conversions ?

Nos experts CRO analysent votre site et vous proposent un plan d'action personnalisé.

Demander un audit gratuit