Live audio player widget on a radio station website
Guides 8 min read
audio-player streaming radio-website

How to Add a Live Audio Player to Your Radio Station Website

How to Add a Live Audio Player to Your Radio Station Website

Your radio station's website exists for one primary reason: to get people listening. And the single most important element on that site is the live audio player. It's not the schedule page, not the DJ bios, not the blog — it's the play button. If a visitor can't start listening within seconds of landing on your site, you've already lost them.

Yet getting a reliable, good-looking live player onto a website is one of the most common frustrations station owners face. The player needs to work on every browser, stay active as visitors navigate between pages, display what's currently playing, and look like it belongs on your site — not like a widget from 2009.

This guide walks through the four main approaches, from simplest to most powerful, so you can pick the one that fits your station's technical comfort level and budget.

Why the Live Player Is Your Most Important Feature

Think about how listeners interact with your website. Most visitors arrive because they want to tune in — right now. They might have heard about your station from a friend, found you through a search, or clicked a social media link. Whatever brought them there, the first thing they're looking for is a way to listen.

A well-implemented player does several things at once. It converts casual visitors into active listeners. It keeps people on your site longer because they're engaged with your audio while browsing other pages. It displays now-playing metadata that makes your station feel alive and current. And it gives your website a reason to exist beyond being a static brochure.

If your player is buried in a subpage, breaks on mobile, or resets every time someone clicks a link, you're bleeding listeners.

Option 1: Embeddable Players from Your Streaming Provider

If you stream through a service like Radio.co, Shoutcast, Icecast, or Azuracast, most of them offer an embeddable player widget — typically a small HTML snippet you paste into your site.

How it works: You copy an <iframe> or JavaScript embed code from your streaming provider's dashboard and paste it into your website's HTML. The player loads inside that embed and connects directly to your stream.

Pros: - Dead simple to set up — copy, paste, done - Maintained by your provider, so it stays compatible with their infrastructure - Usually includes basic now-playing info

Cons: - Limited or no styling options — the player looks how the provider designed it, not how your site looks - Often lives in an iframe, which can feel disconnected from the rest of your page - Doesn't persist across page navigations (the stream restarts every time someone clicks to a new page) - Mobile experience varies widely

This is a perfectly fine starting point if you just need something working today. But most station owners outgrow embed widgets quickly once they realize the styling and persistence limitations.

Option 2: WordPress Plugins

If your site runs on WordPress, there are dedicated radio player plugins that offer more control. Popular options include Pro.Radio, Starter starter Radio Player, and WP Audio Player.

How it works: You install the plugin, enter your stream URL in its settings panel, and configure appearance options. The plugin generates a player that integrates into your WordPress theme.

Pros: - More styling flexibility than a basic embed - Some plugins support persistent playback across pages (using AJAX navigation) - Can integrate with other WordPress features like show schedules or playlists - Album art and metadata display options

Cons: - Plugin quality varies enormously — many are poorly maintained or abandoned - Persistent playback often requires specific theme compatibility or additional configuration - Can conflict with other plugins, caching layers, or theme updates - Premium plugins cost $30-$80 and still need configuration - Mobile responsiveness depends on plugin quality

WordPress plugins are a solid middle ground if you're already committed to WordPress and comfortable troubleshooting plugin conflicts. Budget time for testing across devices, and keep backups before major plugin updates.

Option 3: Custom HTML5 Audio Player

For stations with access to a developer (or station owners who enjoy coding), building a custom player using the HTML5 <audio> element gives you complete control over appearance and behavior.

How it works: You write HTML, CSS, and JavaScript to create a player from scratch. The HTML5 <audio> API handles stream playback, and you build the interface around it.

A basic implementation looks something like this:

<audio id="stream" src="https://your-stream-url.com/live"></audio>
<button onclick="document.getElementById('stream').play()">Play</button>

From that starting point, you'd add volume controls, now-playing metadata fetching, album art display, and responsive styling.

Pros: - Complete design freedom — the player looks exactly how you want - No third-party dependencies - Can implement persistent playback with a single-page application architecture or fixed player bar - Full control over metadata fetching and display

Cons: - Requires real development skills (JavaScript, CSS, understanding of audio APIs) - You're responsible for cross-browser compatibility, mobile testing, and ongoing maintenance - Fetching now-playing metadata requires server-side proxy work (CORS issues with most stream APIs) - Building persistent playback across page loads is a significant engineering challenge - Time investment: realistically 20-40 hours for a polished, production-ready player

This path makes sense for stations with a developer on staff or a budget for custom work. But for most indie stations, the development time and ongoing maintenance overhead outweigh the benefits.

Option 4: A Managed Platform with a Built-In Player

The fourth approach is to use a website platform that was built specifically for radio stations — one where the live player is a core feature, not an afterthought or add-on.

How it works: Instead of bolting a player onto a generic website, you use a platform where the player is integrated from day one. You enter your stream URL during setup, and the player just works — persistent across pages, mobile-friendly, with now-playing metadata.

Pros: - Zero development or configuration required - Player is designed to work perfectly with the rest of your site - Persistent playback across all pages by default - Now-playing metadata, album art, and volume control built in - Tested across devices and browsers by the platform team - No plugin conflicts, no iframe limitations

Cons: - Less customization than a fully custom build - You're using the platform's player design (though good platforms match it to your branding)

For the majority of indie stations, this is the approach that makes the most sense. You get a professional player without any of the development burden.

Key Features Your Player Must Have

Whatever approach you choose, make sure your player includes these essentials:

Persistent playback. The stream should keep playing as visitors navigate between pages. If the audio restarts every time someone clicks "Schedule" or "About," the experience is broken.

Now-playing metadata. Displaying the current song title, artist, and album art makes your station feel alive. It also encourages listeners to stay tuned to see what plays next.

Volume control. Seems obvious, but some embed widgets skip this. Listeners need to be able to adjust volume without changing their system settings.

Mobile-friendly design. More than half your traffic is probably on phones. The player needs to work flawlessly on small screens and ideally integrate with mobile lock-screen controls.

Visible play button. The player should be immediately visible on every page — typically as a fixed bar at the top or bottom of the screen. Don't make people hunt for it.

Stream Compatibility: What Format Do You Need?

Your player needs to support whatever format your stream uses. The most common options:

  • Shoutcast / Icecast (MP3/AAC): The most widely used streaming protocols for indie radio. Virtually every player option supports these.
  • HLS (HTTP Live Streaming): Used by some modern platforms and CDN-based streams. Better for adaptive bitrate but requires JavaScript-based playback (like hls.js).
  • Radio.co / Azuracast / other platform streams: These typically output standard MP3/AAC streams that are broadly compatible.
  • Direct MP3/AAC URLs: The simplest format — just a URL pointing to an audio stream. Works with the basic HTML5 <audio> element.

Before choosing a player solution, confirm it supports your specific stream format. Most modern solutions handle Shoutcast, Icecast, and direct streams without issues. HLS support is less universal and may require additional configuration.

The Easier Way: RadioSiteMaker

RadioSiteMaker was built by radio people who got tired of fighting with players, plugins, and embeds.

When you set up your station on RadioSiteMaker, you paste your stream URL into the setup wizard. That's it. Your live player appears on every page of your site — persistent, so it never interrupts playback when listeners browse around. It automatically pulls now-playing metadata and album art from your stream. It works on desktop and mobile. It supports Shoutcast, Icecast, Radio.co, Azuracast, HLS, and direct MP3/AAC streams.

No code to write. No plugins to install. No embeds to style. No WordPress to maintain. Your player works from the moment your site goes live, and it looks like it belongs there because it was designed as part of your site from the start.

Plans start at $99/year with everything included — live player, schedule, DJ profiles, podcasts, blog, events, and more. You can be live in minutes, not weeks.

Start your free trial at RadioSiteMaker.com

Frequently Asked Questions

Can I use my existing Shoutcast or Icecast stream with a website player?

Yes. Shoutcast and Icecast streams output standard MP3 or AAC audio that works with virtually every player solution — embeds, WordPress plugins, custom HTML5 players, and managed platforms like RadioSiteMaker. You just need your stream URL, which your hosting provider can give you.

Why does my player stop when I click to another page on my site?

This happens because each page load creates a new HTML document, which destroys the previous audio element. The fix is persistent playback — either through a single-page application architecture, AJAX-based navigation, or a platform that handles this natively. It's one of the trickiest problems to solve with a DIY approach and one of the biggest advantages of using a purpose-built radio platform.

Do I need a separate streaming service, or can my website host the stream?

Your website and your audio stream are two separate things. The stream comes from a streaming service (Shoutcast server, Icecast, Radio.co, Azuracast, etc.) that encodes and distributes your audio. Your website's player connects to that stream and plays it for visitors. You need both — but a good website platform makes the connection seamless.

How do I display the currently playing song on my website?

Now-playing metadata is typically pulled from your streaming server's API. Most streaming services expose an endpoint that returns the current track title, artist, and sometimes album art. The technical challenge is fetching this data regularly (every few seconds) and handling CORS restrictions that prevent browsers from calling the stream API directly. Purpose-built radio platforms handle this automatically; with DIY solutions, you'll need a server-side proxy.

Will a live player slow down my website?

A well-implemented player adds minimal overhead — the audio stream itself is loaded on demand when the listener clicks play, not on page load. The player UI is just lightweight HTML, CSS, and JavaScript. Poorly built plugins or heavy iframe embeds can impact page speed, though, so test your site's performance after adding any player solution.

Frederick Tubiermont
Written by
Frederick Tubiermont

Founder of RadioSiteMaker. Passionate about making professional radio station websites accessible to every broadcaster.

Get radio station tips in your inbox

Free guides on growing your audience, building your website, and running a better station. No spam, unsubscribe anytime.

Skip the WordPress hassle

Your radio station website, live in 10 minutes. Custom domain, live player, schedule, podcasts, blog — everything included for $99/year.

Start Your Free Trial