Overview
Triggers determine when your popup appears to visitors. HashBar offers 8 powerful trigger types ranging from simple (show on page load) to advanced (trigger on specific user behaviors). The right trigger significantly impacts conversion rates and user experience.
Free Trigger Types
Immediate (Page Load)
Best for: Important announcements, welcome messages, and mandatory notifications
Display the popup immediately when the visitor arrives on the page. This trigger ensures maximum visibility but can negatively impact user experience if overused.
Trigger Settings:
- No configuration needed
- Fires on every page load
- Optimal timing: 0-2 seconds after page fully loads
Use Cases:
- Welcome messages for first-time visitors
- Critical system announcements
- Site-wide banners and notifications
- Mandatory age verification popups
Warning:
Immediate popups can negatively impact user experience and bounce rates. Reserve for important messages only. Consider using a more targeted trigger instead.
Time Delay
Best for: Giving visitors time to explore before showing an offer
Display the popup after a specific number of seconds have passed. This allows visitors to explore your content before showing them a popup, improving user experience.
Trigger Settings:
- Delay duration (seconds): Configurable from 0 to 60+ seconds
- Typical range: 3-20 seconds
- Recommended: 5-10 seconds for email capture
Use Cases:
- Email capture after visitor has read some content
- Promotional offers after initial engagement
- Survey requests after sufficient time on page
- Secondary calls-to-action
Pro Tip:
Test different delay times to find the sweet spot. Delays that are too short interrupt engagement, while delays that are too long may not trigger before visitors leave.
Exit Intent
Best for: Last-minute conversions and exit offers
Trigger the popup when the visitor's mouse moves toward the browser's back button or top of the page (indicating intent to leave). Exit intent popups have high engagement rates because they target departing visitors with a final offer.
Trigger Settings:
- Sensitivity adjustment (how close to edge before triggering)
- Frequency: Show once per session or every time
- No timing configuration needed
Use Cases:
- Special offers for departing visitors
- Last-chance email capture incentives
- Feedback forms to understand why users are leaving
- Re-engagement offers
Warning:
Exit intent popups can feel aggressive if the offer isn't compelling. Ensure your offer provides genuine value to departing visitors.
Pro Trigger Types
Note: The following advanced trigger types are available only on HashBar Pro plans.
Scroll Depth
Best for: Showing offers after visitors have engaged with content
Display the popup after a visitor has scrolled a specific percentage of the page. This ensures visitors have read significant content before seeing your popup, reducing interruption.
Trigger Settings:
- Scroll depth percentage: 25%, 50%, 75%, or custom value
- Show once per session or multiple times
- Recommended: 50% for email capture
Use Cases:
- Email signup after reading article intro
- Related product recommendations
- Deep engagement offers
- Content upgrades (guides, templates)
Implementation:
Scroll depth uses the Intersection Observer API to detect when the visitor has scrolled past specific page elements, ensuring accurate and performant triggering.
Element Click
Best for: Showing contextual popups based on visitor behavior
Display the popup when a visitor clicks on a specific element (using CSS selectors). This allows you to trigger popups based on specific user actions and intents.
Trigger Settings:
- CSS selector (e.g., ".product-btn", "#download-link")
- Optional delay after click (0-5+ seconds)
- Frequency: Show once per session or always
CSS Selector Examples:
.class-name- trigger on elements with this class#id-name- trigger on elements with this IDbutton.cta- trigger on buttons with cta classa[href*="pricing"]- trigger on links containing "pricing"
Use Cases:
- Show offer when visitor clicks "Learn More"
- Display form when clicking product interest
- Show related products when clicking specific items
- Contextual support popups
User Inactivity
Best for: Engaging inactive visitors before they abandon your site
Display the popup after a visitor has been inactive (no mouse movement, no clicks, no scrolling) for a specified duration. This targets visitors who have become disengaged.
Trigger Settings:
- Inactivity duration (seconds): Configurable from 10 to 300+ seconds
- Recommended: 30-60 seconds
- Reset timer on user activity (optional)
Use Cases:
- Chat support offers to inactive visitors
- Help requests when visitors seem stuck
- Discount offers to re-engage inactive visitors
- Exit intent alternative
Pro Tip:
Use inactivity triggers with compelling offers or support messages. Visitors may be reading carefully or researching, so time the trigger appropriately.
Element Visible (Intersection Observer)
Best for: Showing popups when specific content comes into view
Display the popup when a specific element (identified by CSS selector or class) becomes visible in the visitor's viewport. Uses the efficient Intersection Observer API for performance.
Trigger Settings:
- CSS selector or element ID
- Show once per session or every time element becomes visible
- Optional delay before showing popup
CSS Selector Setup:
Add a specific class or ID to your content element you want to trigger the popup:
- Example:
<section class="cta-section"> ... </section> - In trigger settings: enter ".cta-section"
- Popup will show when this section becomes visible
Use Cases:
- Show popup when pricing section comes into view
- Display testimonial offer when reviews section appears
- Show related product popup when product section scrolls into view
- Show form when bottom of page approaches
Performance Benefit:
Intersection Observer is the most performant way to detect element visibility, using native browser APIs rather than continuous scroll listeners.
Page Views
Best for: Targeting returning visitors and frequent page viewers
Display the popup after a visitor has viewed a specific number of pages in their current session. This identifies engaged visitors who have explored your site.
Trigger Settings:
- Page view count: 2, 3, 5, or custom value
- Show after X page views
- Recommended: 3 page views for high engagement
Use Cases:
- Premium offer after exploring multiple pages
- Newsletter signup for engaged visitors
- Product recommendation after browsing
- Support offer for visitors exploring FAQ
Trigger Comparison Table
| Trigger Type | Configuration | Best Use Case | Intrusiveness | Plan |
|---|---|---|---|---|
| Immediate | None | Important announcements | Very High | Free |
| Time Delay | Seconds (3-20) | Email capture | Medium | Free |
| Exit Intent | Sensitivity | Last-minute offers | Medium-High | Free |
| Scroll Depth | Percentage (25-100%) | Engaged visitors | Low-Medium | Pro |
| Element Click | CSS selector | Contextual offers | Low | Pro |
| User Inactivity | Seconds (30-60) | Support offers | Medium | Pro |
| Element Visible | CSS selector | Contextual triggers | Low | Pro |
| Page Views | Count (2-5+) | Engaged visitors | Low-Medium | Pro |
Trigger Best Practices
Match Trigger to Content
Your trigger should match your popup content. Show email capture forms after visitors have engaged (scroll depth or page views), not immediately. Show exit intent offers to departing visitors, not to new arrivals.
Test Different Triggers
Different audiences and pages may respond better to different triggers. Test multiple trigger types and measure conversion rates to find what works best for your audience.
Avoid Trigger Fatigue
Don't show multiple popups to the same visitor in quick succession. Set frequency limits and use the "once per session" option to avoid annoying visitors.
Combine with Positioning
Pair intrusive popups (center modal) with less frequent triggers (scroll depth, element click). Reserve the most common triggers (immediate, time delay) for less intrusive positions (corner, floating box).
Mobile Considerations
Some triggers (exit intent) may not work reliably on mobile. Test your campaigns on mobile devices and consider using alternative triggers like scroll depth or element click for better mobile experience.
Frequency Caps
Always set frequency limits ("show once per session" or "show once per day") to prevent popups from appearing too frequently. Excessive popups harm user experience and conversion rates.
Advanced Trigger Combinations
Example: High-Intent Offer
- Use "Element Click" trigger on pricing button
- Show discount popup immediately
- High-intent visitor is more likely to convert
Example: Engagement-Based Email
- Use "Scroll Depth 50%" trigger
- Show email capture form
- Visitor has already engaged with content
- Higher conversion rate than immediate form
Example: Support Escalation
- Use "User Inactivity" trigger (60 seconds)
- Show chat support offer
- Target visitors who appear stuck or confused
Troubleshooting Triggers
Popup Not Showing
- Verify trigger settings are enabled
- Check CSS selectors are correct for element-based triggers
- Test in incognito mode to avoid frequency caps
- Check browser console for JavaScript errors
Trigger Too Frequent
- Enable "show once per session" option
- Increase delay for time-based triggers
- Adjust scroll depth percentage to require more engagement
Exit Intent Not Working
- Exit intent may not work on touch devices (mobile)
- Ensure popup is not already shown (frequency cap)
- Test on desktop with mouse cursor movement
Next Steps
After setting up your triggers, review your campaign settings and publish it. Monitor performance and test different trigger types to optimize conversion rates. Check out our Campaign Types guide to explore other campaign options.