Title: Tab Teaser
Author: Josip Meštrović
Published: <strong>25 mei 2026</strong>
Last modified: 28 mei 2026

---

Plugins zoeken

![](https://ps.w.org/tab-teaser/assets/icon-256x256.png?rev=3551817)

# Tab Teaser

 Door [Josip Meštrović](https://profiles.wordpress.org/jokster33/)

[Download](https://downloads.wordpress.org/plugin/tab-teaser.2.0.0.zip)

 * [Details](https://nl.wordpress.org/plugins/tab-teaser/#description)
 * [Beoordelingen](https://nl.wordpress.org/plugins/tab-teaser/#reviews)
 *  [Installatie](https://nl.wordpress.org/plugins/tab-teaser/#installation)
 * [Ontwikkeling](https://nl.wordpress.org/plugins/tab-teaser/#developers)

 [Ondersteuning](https://wordpress.org/support/plugin/tab-teaser/)

## Beschrijving

**Tab Teaser** is a lightweight engagement plugin that pulls visitors back when 
they switch to another browser tab. The moment your tab loses focus, Tab Teaser 
swaps the page title and favicon to a custom, attention-grabbing message. When the
visitor switches back, everything is restored instantly.

It is especially effective on cart, checkout, signup, and long-form sales pages 
where every distracted visitor matters.

#### What it does (and doesn’t)

Tab Teaser is scoped on purpose. WordPress already owns your normal page title and
favicon — the plugin doesn’t touch them. It only steps in once the visitor switches
to another tab, and steps right back out when they return. That focused scope is
what keeps the settings short, the frontend payload tiny, and the plugin friction-
free to install alongside any theme or page-builder.

#### Key features

 * **Custom inactive title** — show any message (emoji supported) when the visitor
   leaves the tab.
 * **Two flashing modes** — _Use site title + Site Icon_ alternates your inactive
   pair with the page’s normal title and favicon. _Use a custom alternative pair_
   alternates between two plugin-managed pairs (your inactive title/favicon  a configurable
   Flash title/Flash favicon) so you can rotate two distinct messages.
 * **Trigger delay** — wait N seconds after the tab is hidden before swapping. Visitors
   who tab back in time never see the change.
 * **12 bundled SVG favicons** — hand-crafted icons (Alert, Shopping Cart, Raised
   Hand, Bell, Fire, Broken Heart, Googly Eyes, Watching Eye, New Message, Clock,
   Gift, Sparkle) ship with the plugin, each in paired light + dark variants. Crisp
   at every size, zero HTTP overhead.
 * **Light / dark theme aware** — the plugin detects the visitor’s OS color-scheme
   preference and picks the matching favicon variant automatically, updating live
   if the visitor toggles their theme. You can also upload your own light **and**
   dark inactive / flash favicon.
 * **Custom favicon upload** — pick any image (PNG, JPG, ICO, SVG) from the WordPress
   Media Library.
 * **Live preview** — see exactly how your tab will look as you edit settings. Includes
   a “Simulate Tab Switch” button.
 * **Rich page targeting** — run on every page, on selected pages / posts / custom
   post types / taxonomy terms, or on URL patterns (`/checkout/*`). Independent **
   exclude** rules always win over includes.
 * **No external requests** — every asset is local. No tracking, no telemetry, no
   third-party scripts.
 * **Accessible & lightweight** — vanilla JavaScript on the frontend, ~3 KB minified
   payload, no jQuery dependency.
 * **Multisite-aware uninstall** — every option is removed cleanly when the plugin
   is deleted.

#### Privacy

Tab Teaser does not collect, store, or transmit any visitor data. It does not make
any external HTTP requests. It only reads the browser’s standard `visibilitychange`
event to decide when to swap the tab title and favicon.

#### Performance

Tab Teaser is engineered for **zero measurable impact on Core Web Vitals**. Here
is exactly how:

 * **Deferred bootstrap** — the script waits for `window.load` (i.e. after every
   image, stylesheet and render-blocking asset has finished) **plus a configurable
   additional delay** (default 2 seconds) before doing anything. It therefore never
   competes with LCP, FID/INP, or your critical resources.
 * **Vanilla JavaScript, no dependencies** — no jQuery, no framework, no polyfills.
   The entire frontend payload is one file, ~3 KB minified, ~1.5 KB gzipped.
 * **Loaded only where needed** — the script is enqueued only on pages that pass
   your targeting rules. Run it on `/checkout/*` only and the rest of your site 
   ships **zero extra bytes**.
 * **No external HTTP requests** — every asset (icons, script) is served from your
   own origin. No CDN dependency, no third-party DNS, no privacy concerns.
 * **No injected CSS on the frontend** — the plugin does not output any stylesheet
   on visitor-facing pages.
 * **Inert until the tab is hidden** — once initialized, the script only attaches
   one passive `visibilitychange` listener. No timers run, no DOM mutations happen,
   until the visitor actually leaves the tab.
 * **Cache-friendly** — because everything runs in the browser, the plugin is fully
   compatible with full-page caching, CDN caching, and static-site exporters.
 * **SVG favicons** — bundled icons are hand-authored SVG, so they’re a few hundred
   bytes each and stay crisp at any DPR.

In practice, this means a Lighthouse / PageSpeed Insights run against a page with
Tab Teaser enabled measures identically to the same page without it.

#### Developer hooks

 * `tab_teaser_should_load` (filter) — final boolean override before frontend assets
   are enqueued.
 * `tab_teaser_settings_defaults` (filter) — modify the default settings array.
 * `tab_teaser_localized_data` (filter) — modify the data passed to the frontend
   script.
 * `tab_teaser_bundled_presets` (filter) — register additional bundled favicon tiles.

## Schermafbeeldingen

 * [[
 * The settings page with live preview pane.
 * [[
 * Bundled SVG favicon presets (tile picker).
 * [[
 * Targeting by URL pattern.

## Installatie

#### Automatic

 1. In your WordPress dashboard, go to **Plugins  Add New**.
 2. Search for **Tab Teaser**.
 3. Click **Install Now**, then **Activate**.
 4. Go to **Tab Teaser** in the admin sidebar to configure.

#### Manual

 1. Download the plugin ZIP.
 2. Upload the unzipped `tab-teaser` folder to `/wp-content/plugins/`.
 3. Activate the plugin from **Plugins** in your WordPress admin.
 4. Go to **Tab Teaser** in the admin sidebar to configure.

## FAQ

### Will it slow down my site?

No. Tab Teaser is engineered for zero measurable impact on Core Web Vitals — see
the **Performance** section under Description for the full breakdown. In short: 
the script defers itself until after `window.load` plus an additional configurable
delay (default 2 seconds), is pure vanilla JavaScript (~3 KB minified), is loaded
only on targeted pages, makes no external HTTP requests, and stays inert until the
visitor actually leaves the tab.

### Does it work with caching plugins?

Yes. The plugin’s frontend logic runs entirely in the browser using JavaScript and
the standard `visibilitychange` API, so it is unaffected by full-page caching, CDN
caching, or static-site exporters.

### Does Tab Teaser track visitors or collect any data?

No. The plugin does not collect, store, or transmit any visitor data. It does not
make any external HTTP requests. See the Description section for the full privacy
statement.

### Can I use Tab Teaser to change my normal page title or favicon?

No — by design. WordPress already owns your normal on-tab title (the page title)
and favicon (Site Icon, set in Appearance  Customize  Site Identity). Tab Teaser
intentionally keeps its scope to the _inactive_ state so it stays a small, focused
plugin you can install carefree alongside any theme. If you came here looking for
a way to swap a dark-mode-aware brand favicon on the active tab, a dedicated favicon
plugin is the right tool for that job.

### Does it work on mobile browsers?

Yes. The `visibilitychange` event is supported in every modern mobile browser, including
iOS Safari (13+) and Android Chrome.

### Can I run it only on my checkout page?

Yes. Switch the targeting mode to “On selected content” and pick the checkout page
in the include list, or use “On URLs that match patterns” with `/checkout/*`.

### Can I exclude specific pages?

Yes. The targeting card has independent “Exclude” lists for content, taxonomy terms,
and URL patterns. Exclusions always win over includes.

### Does it work with WooCommerce / Easy Digital Downloads / membership plugins?

Yes. Targeting works with any registered public post type or taxonomy, including
WooCommerce products, EDD downloads, BBPress topics, etc. They appear automatically
in the targeting selectors.

### How do I localize / translate the plugin?

The plugin uses the text-domain `tab-teaser`. Translations are loaded automatically
from `/wp-content/languages/plugins/` if available.

## Beoordelingen

![](https://secure.gravatar.com/avatar/93875d2a5676abcf8302726835af18ebd36164454c4965de33a7538080efe62f?
s=60&d=retro&r=g)

### 󠀁[It does what it says it does](https://wordpress.org/support/topic/it-does-what-it-says-it-does-21/)󠁿

 [pineappleonpizza1](https://profiles.wordpress.org/pineappleonpizza1/) 28 mei 2026

Small but functional, no unnecessary bloat just title and favicon changer for inactive
tab. Nice set of predefined favicons and i like the ability to have a second title
and favicon that alternate between first one, it’s a nice touch.

 [ Lees 1 beoordeling ](https://wordpress.org/support/plugin/tab-teaser/reviews/)

## Bijdragers & ontwikkelaars

“Tab Teaser” is open source software. De volgende personen hebben bijgedragen aan
deze plugin.

Bijdragers

 *   [ Josip Meštrović ](https://profiles.wordpress.org/jokster33/)

[Vertaal “Tab Teaser” in je eigen taal.](https://translate.wordpress.org/projects/wp-plugins/tab-teaser)

### Interesse in ontwikkeling?

[Bekijk de code](https://plugins.trac.wordpress.org/browser/tab-teaser/), haal de
[SVN repository](https://plugins.svn.wordpress.org/tab-teaser/) op, of abonneer 
je op het [ontwikkellog](https://plugins.trac.wordpress.org/log/tab-teaser/) via
[RSS](https://plugins.trac.wordpress.org/log/tab-teaser/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 2.0.0

 * Added: deferred script loading. Tab Teaser now waits for `window.load` plus a
   configurable delay (default 2 seconds) before initializing, so it never competes
   with your page’s critical assets.
 * Added: light / dark favicon support. Bundled presets ship with paired light +
   dark SVGs, and the plugin live-detects the visitor’s OS theme (with live updates
   on theme switch). Custom uploads can opt-in to a separate dark variant.
 * Added: nine new bundled SVG icons — Bell, Fire, Broken Heart, Googly Eyes, Watching
   Eye, New Message, Clock, Gift, Sparkle — in addition to the existing Alert, Cart,
   and Raised Hand presets (12 total, all with light + dark variants).
 * Added: two flashing modes. “Use site title + Site Icon” alternates your inactive
   pair with the page’s normal title and favicon. “Use a custom alternative pair”
   alternates between two plugin-managed pairs (inactive title/favicon  a configurable
   Flash title / Flash favicon).
 * Added: new “Performance” settings card hosting the script load delay control.
 * Added: explicit Performance section in the readme.
 * Removed: Active title override and Normal favicon override. WordPress now owns
   the active-tab title and favicon (Site Icon) without any plugin interference —
   Tab Teaser is scoped strictly to the inactive state, keeping the settings page
   short and the plugin friction-free.
 * Improved: preset favicon tiles use a clean single-icon look — the live preview’s
   Light/Dark theme switcher shows what each variant looks like in context.
 * Improved: live preview auto-starts in the inactive state on page load, so visitors
   of the settings page see the effect immediately. Click “Stop Simulating” to view
   the active state.
 * Improved: live preview always boots in the Light theme so the layout is recognizable
   on first load.
 * Improved: the simulator’s “Another tab” placeholder appends “(ACTIVE)” while 
   your tab is inactive, making the swap unmistakable.
 * Improved: widened the live-preview sidebar so the simulator and its controls 
   have more room.
 * Improved: Performance card moved to the bottom of the settings page so the most
   common configuration stays above the fold.
 * Improved: Tips card refreshed to reflect the new workflow (scope, light/dark 
   favicons, flashing modes, e-commerce targeting) and converted to an accordion
   so the sidebar stays compact.
 * Improved: when flashing animation is enabled, the simulator now keeps the tab
   visually inactive throughout and only flips the title / favicon — matching the
   real frontend behavior.
 * Improved: live preview tabs use higher-contrast colors for the inactive (background)
   tab in both light and dark themes, so the title stays readable while the simulation
   runs.
 * Improved: settings UI clarity and helper copy throughout. Settings split into
   a focused “General” card (inactive title, inactive favicon, trigger delay) and
   a dedicated “Flashing Mode” card with an inline help tooltip explaining each 
   mode.
 * Improved: “Zero impact on performance” tip now documents the 2-second post-load
   script delay and warns that switching tabs within 2 seconds of reload during 
   testing may miss the init window — real visitors are never affected.
 * Changed: default inactive title is now “Where Did You Go? 🤨” and the default
   inactive favicon is Googly Eyes — a friendlier, more attention-grabbing out-of-
   the-box experience.
 * Fixed: original favicon is now reliably restored when the visitor returns to 
   the tab. Uses a persistent managed `<link rel="icon">` with href mutation — the
   only pattern Chromium honors for live tab-favicon refresh (element removals are
   ignored by the tab UI).
 * Fixed: tab title and favicon now swap in lockstep on every transition (entering
   inactive, every flash tick, returning to active). Favicons are pre-fetched, converted
   to inline `data:` URIs, and pre-decoded at init, so swaps trigger zero network
   and land on the same paint as the title write.
 * Fixed: the “Site icon” tile in the inactive / flash favicon picker now resolves
   to the site’s actual favicon (WordPress Site Icon when configured, otherwise `/
   favicon.ico`). Previously the tile saved an empty value and the favicon never
   changed on tab switch.
 * Fixed: admin simulation now shows the correct site favicon for both the “Site
   icon” tile and the active-state preview (it no longer falls back to the inactive
   favicon, which made the simulation misleading).
 * Fixed: live preview no longer fails to auto-start on a hard page load — initialization
   is now deferred to the next animation frame.
 * Fixed: toggling “Enable flashing” while the live preview is simulating now updates
   immediately — the simulator reconciles the flashing timer with the current setting
   instead of requiring a stop / start.

#### 1.0.0

 * Initial public release.

## Meta

 *  Versie **2.0.0**
 *  Laatst geüpdatet **11 uur geleden**
 *  Actieve installaties **Minder dan 10**
 *  WordPress versie ** 6.0 of nieuwer **
 *  Getest t/m **7.0**
 *  PHP versie ** 7.4 of nieuwer **
 *  Taal
 * [English (US)](https://wordpress.org/plugins/tab-teaser/)
 * Tags
 * [abandonment](https://nl.wordpress.org/plugins/tags/abandonment/)[conversion](https://nl.wordpress.org/plugins/tags/conversion/)
   [engagement](https://nl.wordpress.org/plugins/tags/engagement/)[favicon](https://nl.wordpress.org/plugins/tags/favicon/)
 *  [Geavanceerde weergave](https://nl.wordpress.org/plugins/tab-teaser/advanced/)

## Waarderingen

 5 van 5 sterren.

 *  [  1 5 ster beoordeling     ](https://wordpress.org/support/plugin/tab-teaser/reviews/?filter=5)
 *  [  0 4 sterren beoordelingen     ](https://wordpress.org/support/plugin/tab-teaser/reviews/?filter=4)
 *  [  0 3 sterren beoordelingen     ](https://wordpress.org/support/plugin/tab-teaser/reviews/?filter=3)
 *  [  0 2 sterren beoordelingen     ](https://wordpress.org/support/plugin/tab-teaser/reviews/?filter=2)
 *  [  0 1 sterren beoordelingen     ](https://wordpress.org/support/plugin/tab-teaser/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/tab-teaser/reviews/#new-post)

[Bekijk alle beoordelingen](https://wordpress.org/support/plugin/tab-teaser/reviews/)

## Bijdragers

 *   [ Josip Meštrović ](https://profiles.wordpress.org/jokster33/)

## Ondersteuning

Iets te melden? Hulp nodig?

 [Het supportforum bekijken](https://wordpress.org/support/plugin/tab-teaser/)