v3.1 — Discord Music Bot

Music that
flows with you.

EchoGuard brings high-quality, uninterrupted music — and now internet radio — to your Discord server. Playlists, queues, stats, volume control — all in a clean slash-command experience.

20
Slash Commands
39
Radio Stations
150%
Max Volume

Everything you need.

Designed to be fast, reliable, and easy to use.

🎵

Multi-source search

Search and play from YouTube Music ,YouTube and Spotify. Supports direct links, names, or full playlist URLs.

📋

Advanced queue

View, jump, remove, shuffle, or clear your queue at any position. Up to 100 tracks. Playlist imports skip duplicates automatically. Paginated display with navigation buttons.

📻

Internet radio

39 stations across 10 countries with /radio, sorted by country with autocomplete. Live "now playing" panel updates the current song roughly every ad break via ICY metadata. Switch back to music anytime with /play.

📊

Personal listening stats

Track your listening history across every server. Total listen time, top 5 tracks, top 5 artists, top 5 radio stations — all encrypted (AES-256-GCM) and visible only to you. Use /resetstats to erase everything.

🔁

Loop modes

Three modes: Off, Track, or Queue. Toggle from slash commands or the player buttons.

🔊

Volume control

Set volume from 0 to 150%.

⏱️

Smart idle & auto-pause

Automatically pauses when everyone leaves the voice channel, and resumes when someone comes back. Disconnects after 3 minutes of true inactivity.

🎚️

Audio filters

Bassboost, Nightcore, Vaporwave, 8D. Apply with /filters, resets to default automatically when the bot leaves the voice channel.

🔖

Track saving

Save any playing track directly to your DMs with /save. Retrieve your full list with /mysaves. Duplicate detection replaces the old entry instead of piling up copies. Up to 50 saves per user, oldest entry rotated out automatically.

🌐

Server listening stats

Aggregate, anonymous stats per server with /serverstats — total tracks and listen time, no track titles or user data stored.

🎛️

Interactive player buttons

Every Now Playing embed includes live buttons — pause/resume, skip, loop toggle, shuffle, stop. Restricted to members in the bot's voice channel.

All 20 commands,
clearly explained.

Every command is a Discord slash command — just type / to get started.

/play

Play a track or playlist Music

Provide a song name or a direct link (YouTube and Spotify). Playlist links add all tracks at once. Autocomplete suggests results in real time as you type. The bot joins your voice channel automatically.

/radio

Play an internet radio station Radio

Pick a station from the autocomplete list — 39 stations across 10 countries, sorted by country. Switches the player to radio mode: skip/loop/jump/remove/shuffle turn off, volume and filters stay available. Use /play to switch back to music.

/skip

Skip one or more tracks Control

Skips the current track and moves to the next. Use the optional number parameter to skip multiple tracks at once (1–20). Disabled while a radio station is playing.

/queue

View the current queue Queue

Displays upcoming tracks with their position, title, and duration. Results are paginated (10 tracks per page) — use the ◀️ ▶️ navigation buttons in the response to browse pages.

/clearqueue

Clear all queued tracks Queue

Removes every track from the upcoming queue in one shot. The currently playing track is not affected. Useful when you want a fresh start without stopping playback.

/loop

Set loop mode Control

Choose between Off (no repeat), Track (repeat current song), or Queue (repeat the whole queue). Also accessible via the 🔁 player button. Disabled while a radio station is playing.

/volume

Adjust volume Control

Set the playback volume from 0% (muted) to 150% (boosted). Default is 80%. Changes apply instantly, including during radio playback.

/jump

Jump to a queue position Queue

Skips all tracks up to the specified position and immediately plays that track. Useful for long queues where you want to skip ahead quickly. Disabled while a radio station is playing.

/remove

Remove a track from the queue Queue

Deletes the track at the specified position from the upcoming queue. Use /queue first to find the right position number. Disabled while a radio station is playing.

/shuffle

Shuffle the queue Queue

Randomly reorders all tracks currently in the queue using the Fisher-Yates algorithm. Also accessible via the 🔀 player button. Disabled while a radio station is playing.

/nowplaying

Show current track info Music

Displays a rich embed with the current track title, artist, duration, volume, loop mode, and queue size — or the current station, country, and genre in radio mode. Shows the matching interactive player buttons.

/filters

Apply an audio filter Music

Choose between Bassboost, Nightcore, Vaporwave, 8D, or Off. Works during radio playback too. Filters reset automatically when starting a radio station or when the bot leaves the voice channel.

/serverstats

Server listening stats Stats

Shows this server's aggregate listening stats — total tracks played and total listening time. Fully anonymous: no track titles or user data are ever stored.

/save

Save track to DMs Stats

Sends the currently playing track directly to your private messages as a rich embed — including title, artist, duration, and a direct link. Up to 50 tracks are kept per user (oldest entry rotated out automatically). Not available for radio stations. Make sure to allow DMs from server members in your Discord privacy settings.

/mysaves

View saved tracks Stats

Displays your last 25 saved tracks with title, artist, and save date — all as a private ephemeral message. Tracks are saved via /save and stored encrypted in the database.

/stats

Your listening stats Stats

Shows your personal listening history across all servers: total tracks listened, total time, top 5 tracks, top 5 artists, and top 5 radio stations. Response is ephemeral — only visible to you. Stats are encrypted and stored securely.

/resetstats

Delete your stats Stats

Permanently and irreversibly deletes all your listening data from our database. Useful if you want a fresh start or wish to exercise your right to data erasure.

/stop

Stop and disconnect Control

Stops playback, clears the queue, and disconnects EchoGuard from the voice channel immediately.

/help

Show all commands Other

Displays a full categorized list of all available slash commands — Playback, Queue, Settings, Info, and Other — in a compact ephemeral embed.

Frequently asked questions

Can't find what you're looking for? Join our support server.

This message appears when EchoGuard is not currently connected to any voice channel in your server. Use /play while in a voice channel to start a new session. The bot will join automatically.
EchoGuard has an automatic idle timeout of 3 minutes. It will disconnect when: the queue is empty and no new track is added, or everyone leaves the voice channel. This prevents the bot from sitting idle and wasting resources.
Only you. The /stats command always responds ephemerally — the message is invisible to everyone else in the channel. Your data is stored encrypted (AES-256-GCM) and your Discord user ID is hashed (HMAC-SHA256), making it non-reversible even for server administrators. Use /resetstats at any time to permanently erase all your data.
Yes — since v3.1. Use /radio and pick a station from the autocomplete list: 39 stations across 10 countries, sorted by country. The now-playing panel updates with the current song roughly every ad break. Switch back to regular music with /play.
A radio station is a single continuous stream, not a queue — skip, loop, jump, remove, and shuffle don't apply and are disabled while /radio is active. Volume and filters still work. Use /play to leave radio mode.
Radio listening time is credited roughly every 60 seconds while you're actively listening (not paused, not deafened). Track count doesn't increase for radio — only listening time and your top 5 stations do.
EchoGuard only records a listen once you've reached at least 85% of a track's total duration (or 90% if the track finished naturally). Tracks under 45 seconds are never counted. This prevents quick skips from inflating your statistics.
EchoGuard supports one active player per server (guild). You cannot stream different music to two voice channels simultaneously within the same server. Each server maintains its own independent player session.
By default, EchoGuard searches via YouTube Music. Direct YouTube and Spotify (including playlists) is fully supported.
Yes — since v2.8, EchoGuard automatically pauses playback when the last human leaves the voice channel, and resumes as soon as someone rejoins. If no one comes back within 3 minutes, it disconnects and clears the session.
Use /save while a track is playing — EchoGuard sends a rich embed to your Discord DMs with the title, artist, duration, and a direct link. Your saves are stored encrypted in the database and capped at 50 entries per user. Once the limit is reached, the oldest entry is removed to make room for the new one. View your full list at any time with /mysaves.
No — EchoGuard automatically filters out tracks that are already present in the queue when you load a playlist. It also tells you how many duplicates were skipped so nothing is a surprise.

Enjoy EchoGuard?
Help it grow.

A vote takes 5 seconds and helps more people discover the bot. Every donation keeps the servers running.

Terms of Service

Please read these terms before using EchoGuard on your server.

EchoGuard — Terms of Service

Last updated: July 2026 · Applies to all servers using EchoGuard

01 Acceptance of Terms

By adding EchoGuard to your Discord server or using any of its commands, you agree to be bound by these Terms of Service. If you do not agree, please remove the bot from your server and stop using its features.

02 Description of Service

EchoGuard is a Discord music bot that streams audio content from third-party sources — including on-demand tracks and internet radio stations — using the Lavalink audio framework. It also provides optional personal listening statistics. The service is provided free of charge and as-is, without any guarantees of availability or performance.

03 Permitted Use

You may use EchoGuard for personal and community entertainment purposes within Discord servers you own or administer. You agree to use the bot in compliance with:

  • Discord's Terms of Service and Community Guidelines
  • YouTube's Terms of Service regarding content streaming
  • All applicable laws and regulations, including French law, which governs this service

04 Prohibited Use

You may not use EchoGuard to:

  • Stream, share, or redistribute copyrighted content in violation of applicable law
  • Attempt to exploit, overload, or disrupt the bot or its infrastructure
  • Automate interactions with the bot beyond normal slash command usage
  • Use the bot for commercial purposes or monetized streams without prior consent
  • Facilitate harassment, hate speech, or any illegal activity

05 Intellectual Property & Content

EchoGuard does not store, host, or own any audio content. All music is streamed in real time from third-party platforms. Responsibility for respecting copyright law lies solely with the users and server administrators requesting playback. EchoGuard and its name, design, and features are the exclusive property of its developers. All rights reserved.

06 Data & Privacy

EchoGuard processes the following data during its operation:

  • Discord Guild IDs and Channel IDs — used for routing audio and responses, not retained after session end
  • User IDs — hashed with HMAC-SHA256 (non-reversible) for stats lookup only
  • Track and artist names — encrypted with AES-256-GCM before storage, decrypted only at display time
  • Radio station names — stored in plain text against your hashed ID for the top-5 stations feature; station names are public broadcaster names, not personal data
  • Listening duration — stored in aggregate (minutes), never raw timestamps
  • Search queries — forwarded to the Lavalink server; subject to their own privacy policies

Listening statistics are stored only if you use the bot and reach the minimum listen threshold (≥ 85% of track duration, or ≥ 90% if the track finished naturally; tracks under 45 seconds are excluded). Radio listening time is credited roughly every 60 seconds while actively listening, independently of that threshold. You may permanently delete all your data at any time using /resetstats. Server-wide aggregate stats (/serverstats) are automatically deleted when EchoGuard is removed from a server. We do not sell or share any data with third parties.

07 Service Availability

EchoGuard is provided on a best-effort basis. We do not guarantee uptime, audio quality, or access to any specific content source. The service may be interrupted for maintenance, updates, or due to external factors beyond our control (such as third-party API availability). We reserve the right to discontinue the public bot instance at any time.

08 Limitation of Liability

EchoGuard and its developers shall not be held liable for any direct, indirect, incidental, or consequential damages arising from the use or inability to use the service. This includes, but is not limited to, disruption of Discord activities, loss of data, or any issues arising from third-party platform changes.

09 Modifications to Terms

We reserve the right to update these Terms of Service at any time. Continued use of EchoGuard after changes constitutes acceptance of the new terms. We will indicate the date of the last update at the top of this document. For significant changes, we will make reasonable efforts to notify users via our support server or bot announcements.

10 Governing Law & Jurisdiction

These Terms of Service are governed by French law, except where mandatory local consumer protection laws provide otherwise. If a dispute arises from the use of EchoGuard, users are encouraged to contact us first so we can try to resolve the issue informally.

If no amicable resolution is found, the dispute may be brought before the competent courts under applicable law. Nothing in these Terms limits any mandatory rights granted to users under consumer protection regulations.

11 Contact

For questions, abuse reports, or removal requests, please reach out through our official Discord support server (discord.gg/WNCMA5QYt8). We aim to respond to all inquiries within 72 hours.