Be first in line: join the VIP list for early access to our next sale.
Join the VIP list for early access
Yes, email me news and offers. I can unsubscribe at any time.

Free DashNex module · Guide

Announcement Bar

Site-wide bars for promos, launches and notices, with email sign-ups that land in your Contacts. Set up in about a minute.

Made by Unified WebTech for DashNex apps (1.1.0 or later). Free. Questions? Use the Contact page; we answer support requests for every install.

Install and set up

1. In your DashNex business (business.dashnex.com), open the App Marketplace and install Announcement Bar. DashNex redeploys your app and creates the module’s tables.

2. In your app’s admin sidebar, open Announcement Bars → New bar. Pick a template (Email signup for leads) or Start blank.

3. Type your message. Under Call to action, choose Join your email list (then check the consent statement and privacy link) or Click a link.

4. Publish. The bar appears on your site within about 10 seconds. No code changes are needed.

Everything else (schedule, pages, devices, visitors, countdown, phone layout, dismiss rules, analytics) is optional and starts with a safe default.

Templates and appearance

New bar opens a gallery of 20 templates filtered by type: email signups, sales, seasonal, announcements and notices. Sample wording, coupon codes and dates are placeholders, so change them before publishing.

The Site theme look matches your app’s colours with one click. You can also set colours, a gradient or image background, font size, height, border and shadow, and add a CSS-only animation (snow, confetti, shine and more). Animations switch off for visitors who prefer reduced motion, and the editor warns when text colours are hard to read.

Email sign-ups and leads

With Join your email list on, the bar shows an email field, a button and a consent statement. Each signup is added to your Contacts with the bar’s tags (up to 5), so a tag can start an automation such as a welcome email (Emails → Automations → Tag added).

Every signup is also logged under Announcement Bars → Signups, where you can search, filter by bar, export a CSV, or remove a row after a deletion request (delete the contact in Contacts too).

Bots are filtered by a hidden honeypot field, a minimum fill time and a per-IP burst limit. IP addresses are never stored.

Targeting, schedule and dismissing

Show a bar between two dates in your time zone, on chosen pages (include or exclude, with * wildcards), on desktop or phones, to new or returning visitors, signed-in members or guests, by referrer, browser language or UTM campaign, with an optional countdown timer.

Several bars can be live at once, at the top or bottom. The highest bar in the list wins when several match a page (drag to reorder), and you can stack two.

Visitors can close a bar for a session, a number of days or for good. You can also show a bar after a few seconds or some scrolling, hide it automatically, or limit how many times it shows. Signed-in members’ closes follow them across devices.

Phones

Each bar has its own phone settings: a shorter message, one or two lines, or a scrolling ticker, and where the button goes. The editor previews desktop and phone side by side.

How it appears on your site

The module adds the bars to every public page of your app by itself (never to admin, sign-in or API pages). Bars appear right after the page loads; a top bar then moves the page down by its height once. Bottom bars, and bars shown after a delay or scroll, sit over the page and never move it.

If your site has a fixed (sticky) header, give it top: var(--ab-height, 0px) so it sits below a top bar.

For zero layout shift, a developer with access to your app’s code can render <AnnouncementBarSlot /> (imported from @dashnex/announcementbar) in the root layout, before the header. Bars are then part of the first HTML, and the automatic mount steps aside.

Analytics

Each bar shows impressions, clicks, closes, signups and their rates for the last 7, 30 or 90 days. These are anonymous daily counts; no visitor data is collected. Bars with Send events on also tell other modules (and Automations) when they are viewed, clicked or closed.

Data and privacy

Everything stays in your app. Bars, stats and signups are stored in your app’s database, and contacts go to your own Contacts. The module sends nothing to Unified WebTech or anyone else, loads no third-party scripts and sets no tracking cookies.

Visitors’ browsers keep small first-party entries so a closed bar stays closed, show limits work, new and returning visitors can be told apart, and a UTM match is remembered for the session.

Uninstall

Export your signups as a CSV first if you want to keep them. Uninstalling removes the module, and its database migration can drop the four tables it owns (announcement_bars, announcement_bar_stats, announcement_bar_dismissals, announcement_bar_signups). Contacts created by signups stay in your Contacts, and nothing else in your app is changed.

Support

Need help, found a bug, or have an idea? Send us a message through the Contact page and mention Announcement Bar. Unified WebTech supports the module for every install.

Questions about this page? Contact us.