Banner
Display announcements and notices to your users
Display important messages to all your users at the top of the app. Perfect for announcements, maintenance notices, or updates.
Quick Overview
- Only one banner can be active at a time
- Schedule banners to appear and disappear automatically
- Choose whether users can dismiss the banner or not
- Show banners to everyone, or only logged-in users
Creating a Banner
Run this command to create or update a banner:
npm run update-bannerWith Docker, run the script inside the api container instead:
docker compose exec api npm run update-bannerYou'll be guided through a few simple prompts:
--------------------------
Update the banner!
--------------------------
Display From (Format: yyyy-mm-ddTHH:MM:SSZ, Default: now):
> 2025-12-02T09:00:00Z
Display To (Format: yyyy-mm-ddTHH:MM:SSZ, Default: not specified):
> 2025-12-31T23:59:59Z
Enter your message (Enter a single dot "." on a new line to finish):
> 🎉 Welcome to LibreChat! Check out our new features.
> .
Is public (y/N):
> n
Is persistable (cannot be dismissed) (y/N):
> nWhat do these options mean?
- Display From/To: When the banner should appear and disappear. Press Enter at the prompt to use "now" and "forever"
- Is public: Show to visitors who aren't logged in (like on the login page)
- Is persistable: If yes, users can't dismiss the banner (use it for important notices)
Running this again replaces the existing banner
There is only ever one banner. update-banner looks for an existing banner and overwrites it in place, creating one only when none exists, so you cannot queue up a second banner for a later date, and you cannot have two scheduled windows overlap. Running the command again discards the previous banner's message and schedule.
To change a banner, run update-banner again. To take one down before its Display To time, use delete-banner below.
Deleting a Banner
npm run delete-bannerWith Docker, run docker compose exec api npm run delete-banner.
You'll see the current banner and be asked to confirm before deleting.
Only an active banner can be deleted
delete-banner only finds a banner that is currently active: its Display From time must have passed, and its Display To time must be in the future or not set. A banner scheduled for a later date, or one whose Display To has already passed, is reported as "No banner found to delete" and stays in the database. To replace such a banner, run update-banner again.
Removing a banner this way is also how you take one down early: there is no "disable" flag. A banner otherwise disappears on its own once Display To passes, and one saved with no Display To stays up until you delete it.
Example Banners
A simple welcome message that users can dismiss:
npm run update-banner "" "" "👋 Welcome to LibreChat!" "false" "false"A scheduled maintenance notice that can't be dismissed:
npm run update-banner "2025-12-20T00:00:00Z" "2025-12-21T06:00:00Z" "⚠️ Scheduled maintenance on Dec 20th, 2-6 AM UTC" "true" "true"An urgent security notice visible to everyone:
npm run update-banner "" "" "🔒 Please update your password by January 1st" "true" "true"Empty date arguments still prompt
An empty string ("") for a date is treated as missing, so the script still asks for Display From and Display To interactively. Press Enter at each prompt to accept the default, or pass ISO dates (yyyy-mm-ddTHH:MM:SSZ) as the first two arguments to run the command without prompts. The message argument is also required to skip the message prompt, and the isPublic and persistable arguments must be given as true or false to skip theirs.
Date Format
Use this format for dates: yyyy-mm-ddTHH:MM:SSZ
Examples:
2025-12-25T09:00:00Z→ December 25, 2025 at 9:00 AM (UTC)2025-01-01T00:00:00Z→ January 1, 2025 at midnight (UTC)
When prompted, press Enter without typing a date to use the current time for Display From, or no end date for Display To.
How is this guide?
Token Usage
This covers how to track and control token usage in LibreChat. You will learn how to view context and cost, configure transactions, enable user balances, and add credits to an account.
Overview
Explore the features of LibreChat, including agents, MCP integration, code execution, multimodal chat, and more.