How This Tool Works
Start here — a quick map of all six tabs
The Podcast RSS Builder generates a standards-compliant XML feed file that podcast directories (Apple Podcasts, Spotify, Podcast Index, etc.) use to list and distribute your show. You can use it to create a brand-new feed from scratch, or to load and edit an existing feed you've already published.
Leave the form blank and fill in each tab from scratch. All fields start empty. When finished, click Generate Feed, then Download the .xml file and host it at a permanent URL. See the Submit to Directories section to get listed.
Click Load Feed (Tab 1) and paste your live feed URL or upload your saved .xml file. All fields populate automatically. Make your changes, then Generate and re-upload the updated file to the same URL — directories will pick up the changes automatically on their next poll.
- Fill Tab 1 — enter your podcast title, description, cover art URL, and website. These are required fields.
- Fill Tab 2 — add Apple Podcasts artwork, owner email, and author. Generate a Podcast GUID if this is a new show.
- Set up V4V (optional) — skip if you don't use Lightning payments.
- Add episodes — use Tab 4 to fill in each episode's audio URL, title, description, and GUID.
- Generate — click the blue Generate Feed button at the bottom. The feed appears in the View Feed tab.
- Download & host — download as a
.xmlfile and upload it to your web server at a permanent HTTPS URL. - Submit to directories — paste your feed URL into Apple Podcasts Connect, Podcast Index, and others. See the Submit to Directories guide for step-by-step instructions.
Tab 1 — Podcast RSS Builder
Core channel information for the feed's <channel> element
.xml file from your computer, or paste a feed URL. All fields across all tabs are populated from the feed data. Useful for editing an already-published feed.<description> tag. Limit is 4,000 characters — a counter is shown below the editor. Use the × Clear toolbar button to remove all formatting.https://.<image>). Paste the URL and click away — a small thumbnail preview will appear inline. Recommended: 3000 × 3000 px JPG or PNG. Note: Apple Podcasts uses a separate artwork URL in Tab 2.<copyright> tag. Example: © 2025 Your Name.Tab 2 — Podcast Directory Settings
Apple Podcasts, Podcast 2.0, and advanced distribution metadata
itunes:image artwork URL — this is what Apple Podcasts, Spotify, and most modern apps actually display. Must be at least 1400 × 1400 px and no larger than 3000 × 3000 px. JPG or PNG. Paste the URL and blur the field to see a live preview thumbnail.itunes:summary field — Apple Podcasts-specific description (up to 4,000 characters). You can click Copy Podcast Description to pull in whatever you entered on Tab 1, or write a separate summary here.itunes:author tag). Usually the host's name or show brand.podcast:medium tag tells Podcast Index what kind of content this feed contains. Leave blank for a standard podcast, or choose music, video, audiobook, etc. for specialised content.<itunes:block>yes</itunes:block>, which requests that Apple Podcasts remove the show from their directory. Use with caution.podcast:person tag. Fill in the person's Name, optional Profile URL (e.g. a personal website), optional Photo URL, their Group (Cast or Crew), and their Role (Host, Producer, etc.). Click Add Person to commit — they'll appear as a card above the form. You can copy these channel-level persons down to individual episodes in Tab 4.podcast:remoteItem. Useful if you're part of a podcast network. Select the medium type and paste the parent feed's URL. Leave blank if not applicable.podcast:podroll tag. Enter each show's feed URL and its Podcast GUID (if known), then click Add to PodRoll. Supporting podcast apps will surface these recommendations to your listeners.podcast:locked tag. Set to Yes to signal to podcast directories that this feed should not be imported or claimed by anyone other than the verified owner — useful for preventing unauthorised feed migrations. Set to No to explicitly allow transfers, or leave as (not set) to omit the tag entirely.podcast:funding tag. Supporting apps display a "Support this show" button or link that takes listeners directly to that page.podping="true" to your feed, declaring to the network that you will send Podping notifications when your feed updates. Podping is a Podcast 2.0 real-time notification system — instead of apps polling your feed on a slow schedule (every few hours), a ping is broadcast the moment you publish, so supporting apps fetch new episodes within seconds.This field alone does nothing — you also need a tool to actually send the pings. Options include:
podping --hive-account YOUR_ACCOUNT --hive-posting-key YOUR_KEY write --iris YOUR_FEED_URL after each publish. Requires a free Hive blockchain account. Details at github.com/Podcastindex-org/podping.cloud.podcast:location tag and helps location-aware apps and directories surface your show to listeners in or interested in that area.latitude,longitude — for example 30.2672,-97.7431 for Austin, TX. Used by mapping-capable apps alongside the Location Name. You can find coordinates for any place using Google Maps (right-click a location → copy coordinates).R113314 for Texas). This links your podcast location to a verifiable, open mapping database. To find one: search for the place on openstreetmap.org, click the result, and note the relation or node ID shown in the URL or sidebar.Tab 3 — Value4Value
Enable real-time Bitcoin Lightning micropayments from listeners
Value4Value (V4V) is a Podcast 2.0 feature that lets listeners send Bitcoin micropayments (called "sats") to you via the Lightning Network while they listen, using apps like Fountain, Breez, or Podverse. You specify how payments are split among contributors.
0.00000005000 (5,000 satoshis per minute). This is a suggestion — listeners can adjust it in their app.user@getalby.com), Wallet, etc. Most podcasters use Lightning Address or Node.yourname@getalby.com). Some apps display this alongside the node address.fee="true" in the XML.Tab 4 — Create Episode
Fill in details for one episode at a time, then add it to the feed
This tab has two sub-tabs: Regular Episode for standard recorded content, and Live Episode for in-progress live streams using the Podcast 2.0 podcast:liveItem tag. Most podcasters only use Regular Episode.
<description> for the item. Up to 4,000 characters recommended.48293847).audio/mpeg) is most common. The tool defaults to this.<link> element.itunes:summary). Click Copy Episode Description to mirror what you typed in Episode Description, or write a shorter version.1:23:45 for 1 hour 23 minutes 45 seconds.podcast:episodeType tag — a Podcast 2.0 equivalent of the iTunes episode type, used by Podcast Index-aware apps. Options are full (a complete episode), trailer (a preview clip), and bonus (supplemental content). A Copy from Apple Settings button is available to mirror whatever you set in the Apple Podcasts Episode Type field above.podcast:season tag — declares the season number for this episode in Podcast 2.0-compatible apps. Enter a whole number (e.g. 2). This is separate from the Apple Podcasts Season Number field and targets a different set of apps, so set both if you use season numbering.podcast:episode tag — declares the episode number in Podcast 2.0-compatible apps. Enter a whole number (e.g. 42). Set both this and the Apple Podcasts Episode Number above for full cross-app support.podcast:location tag at the item level, scoped to this episode only.latitude,longitude — for example 51.5074,-0.1278 for London. Used alongside the Episode Location name by mapping-capable apps. Find coordinates by right-clicking any location in Google Maps and selecting Copy coordinates.R65606) that ties the episode location to a verifiable open mapping record. To find one, search for the place on openstreetmap.org, click the result, and note the relation or node ID shown in the URL or sidebar.podcast:transcript). Paste the URL and choose the format from the dropdown. Supported formats include WebVTT (text/vtt, the default), JSON (application/json), SRT (application/x-subrip or text/srt), Plain Text, and HTML. Adding a transcript improves accessibility for deaf and hard-of-hearing listeners and makes episode content searchable in supporting apps.podcast:chapters) for apps that support chapter markers. Paste the URL and select the format — JSON (application/json, the most widely supported) follows the Podcast Index chapters spec. XML formats are also available. Chapters let listeners jump to named sections in apps like Podverse, Fountain, and Pocket Casts.podcast:alternateEnclosure tag. Provide a URL and its type from the dropdown — options include HLS, MP4 Video, WebM Video, MP3, M4A/AAC, and DASH. This lets you offer the same episode in multiple formats — for example a video version alongside the audio. Supporting apps can let listeners choose their preferred format.podcast:funding) that overrides or supplements the channel-level funding set in Tab 2. Enter a short label (e.g. Support this episode) and the destination URL. Useful if a specific episode has its own crowdfunding campaign or a guest's support page you want to highlight.podcast:valueTimeSplit tag. Time splits let you temporarily redirect a portion of listener payments to a different feed or episode during a specific window of playback — for example, routing 95% of sats to a guest's own podcast during the segment they appear in. Fill in the Start Time (seconds into the episode), Duration (seconds), Remote Split % (how much of the payment goes to the remote recipient during this window), Remote Feed GUID (the Podcast GUID of the recipient's feed), and Remote Item GUID (the episode GUID, if targeting a specific episode). Click Add Time Split to commit each entry.The Live Episode sub-tab creates a podcast:liveItem entry for a live stream. It has all standard fields plus the following live-specific ones:
2025-06-30T18:00:00.000Z) — use the Now button to fill in the current time. Enter the estimated duration in hours and minutes; the End Date/Time field calculates automatically and cannot be edited directly.Tab 5 — Episodes
Review and manage all episodes currently in the feed
This tab shows a list of every episode you've added. If no episodes exist yet, a placeholder message appears. Each episode row can be expanded and interacted with.
Tab 6 — View Feed
Inspect, search, edit, copy, and download your generated XML
.xml file on your web server or hosting provider. A brief ✓ Copied to clipboard confirmation appears in the status bar.feed.xml file to your computer. Upload this file to your web server at a stable, permanent URL — that URL is what you submit to podcast directories.feed.xml at a permanent HTTPS URL. Then see the Submit to Directories guide for step-by-step instructions on getting listed on Apple Podcasts, Podcast Index, Spotify, and more.Submitting Your Feed to Directories
Get your podcast listed on Apple Podcasts, Podcast Index, and beyond
Once you've generated and hosted your feed XML at a permanent HTTPS URL, you're ready to submit it to podcast directories. Each directory is a one-time submission — after that, they poll your feed URL automatically for new episodes and updates.
feed.xml must be hosted at a stable, publicly accessible HTTPS URL (not a local file or temporary link). Directories will reject feeds that time out or return errors. Most podcast hosting platforms provide this URL for you automatically.Apple Podcasts is the largest podcast directory and a critical first submission. Approval typically takes 24–72 hours.
- Ensure Tab 2 is complete — Apple requires Artwork URL (1400–3000 px), Owner Email, Author, and at least one published episode in the feed.
- Go to podcastersconnect.apple.com and sign in with your Apple ID.
- Click + Add a Show, then paste your feed URL into the field provided.
- Apple will validate your feed. Fix any errors flagged — common issues include missing artwork dimensions, no episodes, or invalid dates.
- Click Submit. Apple will send a verification email to the Owner Email you set in Tab 2. Click the link in that email to confirm ownership.
- Once approved, your show appears in Apple Podcasts within 1–3 business days. You'll receive a confirmation email with your show's Apple Podcasts URL.
https://podcasts.apple.com/podcast/idXXXXXXXXX) is also accepted by many other directories as proof of listing. Save it once your show is approved.Podcast Index is the open, decentralised directory powering Podcast 2.0-compatible apps (Fountain, Podverse, Breez, CurioCaster, etc.). Submission is instant and free.
- Recommended: generate a Podcast GUID first (Tab 2 → Podcast GUID → Generate). This is how Podcast Index uniquely tracks your show across feed URL changes.
- Go to podcastindex.org/add-feed.
- Paste your feed URL and click Add Feed. No account required.
- Podcast Index indexes your feed within minutes. Search for your show name on the site to confirm it's listed.
- To claim ownership and manage your listing, create a free account at podcastindex.org and use the Claim feature — this lets you update metadata and see stats.
Spotify has its own submission portal separate from Apple.
- Go to podcasters.spotify.com and sign in or create a free Spotify account.
- Click Get started → Add your podcast.
- Paste your RSS feed URL and follow the verification steps (Spotify will send a code to your owner email).
- Complete your profile: confirm artwork, categories, and language. Approval is usually within a few hours.
Directories check your feed URL periodically (usually every 1–24 hours). When you add a new episode or update your show info:
- Make your changes in the form (load your feed first if needed).
- Click Generate Feed to rebuild the XML.
- Download the updated
feed.xmland re-upload it to the same URL on your server — overwriting the old file. - Directories will detect the change on their next poll. No re-submission is needed.
<itunes:new-feed-url> tag to the old feed. Apple Podcasts has a formal migration process in Podcasters Connect for this.