User Guide

Podcast RSS Builder

Create a brand-new podcast RSS feed from scratch, or load and edit an existing one — then submit it to Apple Podcasts, Podcast Index, and more.

🗺

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.

Creating a New Feed vs. Editing an Existing One
🆕 New Feed

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.

✏️ Edit Existing Feed

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.

Tab 1
📻 Podcast RSS Builder
Core channel info: title, description, language, category, cover art, dates.
Tab 2
📂 Directory Settings
Apple Podcasts metadata, Podcast 2.0 tags, host/person credits, PodRoll links.
Tab 3
⚡ Value4Value
Lightning Network payment splits — let listeners send sats while they listen.
Tab 4
🎙 Create Episode
Add regular or live episodes, upload audio, set metadata and per-episode V4V.
Tab 5
📋 Episodes
Review, preview, edit, and delete episodes already added to the feed.
Tab 6
🔍 View Feed
Inspect the generated XML, search it, copy it, download it, or load an existing feed.
Guide
🚀 Submit to Directories
Step-by-step instructions for getting your feed listed on Apple Podcasts, Podcast Index, Spotify, and other Podcast 2.0 directories.
Recommended Workflow (New Feed)
  1. Fill Tab 1 — enter your podcast title, description, cover art URL, and website. These are required fields.
  2. Fill Tab 2 — add Apple Podcasts artwork, owner email, and author. Generate a Podcast GUID if this is a new show.
  3. Set up V4V (optional) — skip if you don't use Lightning payments.
  4. Add episodes — use Tab 4 to fill in each episode's audio URL, title, description, and GUID.
  5. Generate — click the blue Generate Feed button at the bottom. The feed appears in the View Feed tab.
  6. Download & host — download as a .xml file and upload it to your web server at a permanent HTTPS URL.
  7. 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.
💡
Fields marked Required must be filled for the feed to validate correctly in podcast directories. Everything else is optional but improves discoverability.
⚠️
Your data only exists in the browser — there is no server-side save. If you need to come back later, use View Feed → Download to save your XML, then reload it with Load Feed next session.
📻

Tab 1 — Podcast RSS Builder

Core channel information for the feed's <channel> element

Top Controls
Clear Form Button
Resets all fields in every tab back to blank. A confirmation dialog will appear first — this cannot be undone.
Load Feed Button
Import an existing RSS .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.
Basic Info
Podcast Title Required
The public name of your podcast as it appears in directories. Use your real show name — don't stuff keywords here.
Podcast Description Required
A rich-text field supporting bold, italic, lists, and links via the toolbar above the editor. This description goes into the standard RSS <description> tag. Limit is 4,000 characters — a counter is shown below the editor. Use the × Clear toolbar button to remove all formatting.
Podcast Language
The primary spoken language of your show. Defaults to English (United States). Select the appropriate locale from the dropdown — this affects how directories categorise and recommend your podcast.
Podcast Category
The standard RSS category for your show (e.g. Technology, Comedy). Note: Apple Podcasts uses a separate category field in Tab 2 — set both for full compatibility.
Podcast Website URL Required
The homepage or main website for your podcast. Used by directories to link listeners to your site. Must start with https://.
Cover Image
Podcast Cover Image URL
Direct URL to your podcast artwork (the standard RSS <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.
Cover Image Click-Through URL
Where listeners are sent when they click the cover image in an RSS reader. Usually the same as your Podcast Website URL.
Cover Image Title / Description
Metadata for the image element. The title is usually your podcast name; the description is a short alt-text like "Podcast artwork".
Cover Image Width / Height (px)
Pixel dimensions of the image. Standard recommendation is 3000 × 3000. Some older apps cap at 1400 px but most modern directories support 3000.
Dates & Legal
Publication Date
When the channel was first published. Click the Now button to insert the current date/time in RFC-2822 format (required by the RSS spec). You can also type a date manually.
Last Updated Date
Auto-populated with the current date/time when the page loads. Updated automatically each time you generate the feed. Podcast apps use this to decide whether to re-fetch your feed.
Copyright Notice
Appears in the feed's <copyright> tag. Example: © 2025 Your Name.
➡️
At the bottom of the tab you'll find two buttons: Update Feed — which immediately rebuilds the XML with your current Tab 1 values without leaving the tab — and Next: Podcast Directory Settings → which moves you to Tab 2. You can also click any tab in the navigation bar at the top.
📂

Tab 2 — Podcast Directory Settings

Apple Podcasts, Podcast 2.0, and advanced distribution metadata

Apple Podcasts Settings
Podcast Artwork URL Required
The 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.
Podcast Summary
The 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.
Primary Category / Subcategory
Apple Podcasts uses its own category taxonomy. Choose your primary category first — the subcategory dropdown will update to show valid sub-options. Example: TechnologyTech News. Only categories valid for Apple are listed.
Podcast Owner Email Required
Used by Apple Podcasts to verify ownership of the feed. This email is not shown publicly in the feed but Apple needs it for support and ownership transfers.
Podcast Owner Name
Your name or company — paired with the Owner Email.
Podcast Author Required
The name displayed in podcast apps next to your show (the itunes:author tag). Usually the host's name or show brand.
Explicit Content
Mark Yes if any episodes contain explicit language or adult content. Apple Podcasts uses this to apply parental advisories. Individual episodes can override this setting.
Podcast Type
Episodic (default): Episodes are consumed in any order — newest first. Serial: Episodes are meant to be listened to in sequence (e.g. narrative storytelling, courses).
Podcast 2.0 Settings Podcast 2.0
Content Medium
The 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.
Podcast Complete
Set to Yes only if your show has permanently ended and no new episodes will ever be published. Most shows should leave this as No.
Block from Directories
Setting to Yes adds <itunes:block>yes</itunes:block>, which requests that Apple Podcasts remove the show from their directory. Use with caution.
Podcast GUID
A globally unique identifier for your podcast feed. Click Generate to create one automatically (UUID v4 format). This is a Podcast 2.0 tag used by Podcast Index to reliably track your show even if the feed URL changes. Generate once and never change it.
Primary Host / Person Podcast 2.0
Person Fields
Add hosts, co-hosts, producers, and other contributors at the channel level using the 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.
Publisher Feed Link Podcast 2.0
Publisher Medium / Publisher Feed URL
Links this feed to a parent publisher feed using 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.
Publisher Feed GUID
The Podcast GUID of the parent publisher feed you're linking to. This is the UUID assigned to that feed — not your feed's own GUID. Leave blank if you don't know it or if it hasn't been assigned.
PodRoll Podcast 2.0
PodRoll — Recommended Podcasts
A curated list of other podcasts you recommend, embedded in your feed via the 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.
Feed Lock Podcast 2.0
Lock Feed
The 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.
Feed Lock Owner Email
The email address of the verified feed owner, paired with the Lock Feed setting. Directories use this to confirm ownership when the lock tag is present. This is separate from the Apple Podcasts Owner Email above.
Funding Podcast 2.0
Funding Button Label
A short call-to-action label shown alongside the funding link in supporting apps. Keep it brief and action-oriented — for example: Support the Show, Buy Me a Coffee, or Join the Patreon. If left blank, apps will typically display a generic label.
Funding / Support URL
A URL where listeners can financially support your show — for example a Patreon page, Buy Me a Coffee link, membership site, or any crowdfunding URL. This populates the podcast:funding tag. Supporting apps display a "Support this show" button or link that takes listeners directly to that page.
Podping Podcast 2.0
Enable Podping
A simple Yes / No toggle. Setting this to Yes adds 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.cloud CLI — The official command-line tool. Run 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.
Castopod — Self-hosted podcast publishing platform with built-in Podping support. Pings are sent automatically on publish. castopod.org
Podping.org API — A hosted HTTP API you can call from any publishing workflow or script. POST your feed URL to receive a ping. Documentation at podping.org.
Sovereign Feeds — A web-based podcast feed editor at sovereignfeeds.com. Load your feed URL into the tool and use its built-in Podping button to send a ping directly from the browser — no CLI or account setup required. A straightforward option if you're managing your feed manually.
Podcast hosting platforms — Several hosts (Buzzsprout, Podbean, Transistor, and others) send Podpings automatically when you publish. Check your host's documentation — if they support it, you may not need to do anything beyond setting this field to Yes.
Location Podcast 2.0
Podcast Location
A human-readable place name associated with your podcast's subject matter or origin — for example Austin, Texas, London, UK, or The Amazon Rainforest. This populates the podcast:location tag and helps location-aware apps and directories surface your show to listeners in or interested in that area.
Location Geo (latitude,longitude)
An optional precise geographic coordinate entered as 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).
Location OSM Node
An optional OpenStreetMap node or relation identifier (e.g. 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.
Update Frequency
Update Frequency
Hints to podcast apps how often to check your feed for new episodes (e.g. Weekly, Daily). This is informational only — apps may poll on their own schedule regardless.
➡️
At the bottom of the tab you'll find Update Feed — which rebuilds the XML immediately with your current values — and Next: Value4Value → to continue to Tab 3.

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.

ℹ️
This entire tab is optional. If you don't use Lightning payments, skip it entirely — it has no effect on feed validity.
Payment Settings
Payment Network
The payment network for streaming value. Lightning is by far the most widely supported. Web Monetization and Hive are niche alternatives.
Payment Method
Keysend is the standard method — it allows push payments directly to a Lightning node without an invoice. AMP and ILP are for more specialised setups.
Suggested Payment Amount
The default number of satoshis per minute suggested to listeners. Example: 0.00000005000 (5,000 satoshis per minute). This is a suggestion — listeners can adjust it in their app.
Payment Recipients
Recipient Name
The person or wallet receiving this payment split (e.g. "Host", "Show Wallet", "Producer").
Recipient Type
How the recipient's address is resolved: Node (Lightning node public key), Lightning Address (like an email — e.g. user@getalby.com), Wallet, etc. Most podcasters use Lightning Address or Node.
Recipient Address
The actual address for the recipient — a Lightning node ID, wallet identifier, or payment pointer depending on the type selected above.
Payment Split (%)
What percentage of the total payment this recipient receives. All recipients' splits should add up to 100 (though the tool doesn't enforce this). Example: Host 90%, Editor 10%.
Custom Key / Custom Value
Advanced: Used by some Lightning wallets (like Alby) to route payments to specific sub-accounts. Leave blank unless your wallet provider requires them.
Lightning Address
An optional human-readable Lightning address for the recipient (e.g. yourname@getalby.com). Some apps display this alongside the node address.
Wallet Fee
Set to Yes if this recipient is a service/wallet provider taking a routing fee rather than a content creator split. This tags them with fee="true" in the XML.
After filling in all fields for a recipient, click Add Recipient. They'll appear as a card above the form. Add as many recipients as needed, then move to the next tab.
🎙

Tab 4 — Create Episode

Fill in details for one episode at a time, then add it to the feed

💡
Use Copy Last Episode (top-right button) to pre-fill the form with the previous episode's metadata — handy for recurring shows where only the title, audio URL, and date change.
Regular vs. Live Episodes

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.

Core Fields
Episode Title Required
The public title of this episode as shown in podcast apps. Be descriptive — this is what listeners see in their queue.
Episode Description
Rich-text field (bold, italic, lists, links) for the episode's show notes. This is the standard RSS <description> for the item. Up to 4,000 characters recommended.
Audio/Video File URL Required
Direct URL to the episode's media file (MP3, M4A, MP4, etc.). When you leave this field (blur), the tool will attempt to fetch the file's size and duration automatically — so those fields may auto-populate. Must be a publicly accessible URL.
File Size (bytes)
The exact byte size of the audio/video file. Often auto-detected from the URL above. If it doesn't auto-detect, find this in your file manager or hosting dashboard and enter it manually (e.g. 48293847).
Media File Type
The MIME type of the enclosure. Select from the dropdown — MP3 (audio/mpeg) is most common. The tool defaults to this.
Episode Unique ID (GUID) Required
A globally unique identifier for this episode. Click Generate for a UUID — once assigned, never change a GUID. Apps use it to track whether you've listened to an episode; changing it makes apps think it's brand new. Alternatively, the episode's permanent web URL can serve as the GUID.
ID is a Permalink
Set to true if the GUID above is a real URL (an episode webpage). Set to false (default) if the GUID is an abstract UUID that isn't a real URL.
Episode Web Page URL
Optional link to the episode's webpage or show notes page on your site. Different from the GUID — this is the <link> element.
Publication Date Required
When this episode was (or will be) published. Click Now to fill in the current date/time in RFC-2822 format. Podcast apps sort episodes by this date.
Apple Podcasts Settings
Episode Summary
The Apple Podcasts-specific summary (itunes:summary). Click Copy Episode Description to mirror what you typed in Episode Description, or write a shorter version.
Episode Artwork URL
An optional per-episode artwork image. Leave blank to use the channel artwork. Useful for season-specific art or branded episode visuals.
Explicit Content
Override the channel-level explicit setting for this specific episode. Set to Yes if this episode is explicit even if the show generally is not (or vice versa).
Episode Author
The author credited for this specific episode. Leave blank to inherit the channel author.
Episode Duration (HH:MM:SS)
The playback length of the episode. Often auto-detected when you enter the audio URL. Format: 1:23:45 for 1 hour 23 minutes 45 seconds.
Episode Type
Full: A complete episode. Trailer: A short preview of the show or season. Bonus: Extra content (behind-the-scenes, extended interviews, etc.).
Season Number / Episode Number
Used for numbered shows. Apple Podcasts displays these in apps. Leave blank for un-numbered/episodic formats.
iTunes Display Title
An optional Apple-only title that overrides the main Episode Title in Apple Podcasts (but not other apps). Rarely needed.
Podcast 2.0 Settings Podcast 2.0
Episode Type Podcast 2.0
The 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 2.0 Season
The 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 2.0 Episode Number
The 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.
Person Fields (Episode-level)
Add guests, co-hosts, or crew members specific to this episode. Same flow as channel-level Persons: fill Name, optional Profile URL, optional Photo URL, Group, and Role — then click Add Person. Click Copy from Directory Settings to pull in your channel-level people as a starting point.
Episode Location
A human-readable place name relevant to this specific episode's content — for example the city where an interview was recorded, or the location a travel episode covers. Uses the podcast:location tag at the item level, scoped to this episode only.
Location Geo (latitude,longitude)
Precise coordinates for the episode location entered as 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.
Location OSM Node
An optional OpenStreetMap node or relation ID (e.g. 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.
Transcript File URL / Transcript Format
Link to an episode transcript (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.
Chapters File URL / Chapters Format
Link to a chapters file (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.
Alternate Media Source URL / Type
An alternative media file for this episode using the 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.
Funding Button Label / Funding URL
An episode-level funding link (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.
Episode V4V Settings (Episode-level)
Override or augment the channel-level V4V recipients specifically for this episode. Useful for guest payment splits on a per-episode basis. The section is collapsed by default — click the Value4Value header to expand it. Same Payment Settings and Payment Recipients fields as the main V4V tab are available here.
Value Time Splits Podcast 2.0
An advanced V4V feature using the 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.
Adding & Saving the Episode
Save Episode
The primary button at the bottom of the tab. Saves this episode to the feed's episode list. If you're editing an existing episode (triggered from the Episodes tab), the button replaces the old version in place and dismisses the edit mode bar. Click Cancel Edit to discard changes without saving.
Live Episode Sub-tab

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:

Stream Status
Indicates the current state of the live stream: Pending (scheduled but not yet started), Live (currently streaming), or Ended (stream is over). Update this as the stream progresses and regenerate the feed so supporting apps reflect the current state.
Stream URI / Stream Protocol
Under Stream Details (podcast:liveValue). The direct URL of the live stream endpoint and its protocol — socket.io, HLS, RTMP, or WebSocket. Used by Podcast 2.0 apps that can play live streams directly.
Start Date/Time / Estimated Duration / End Date/Time
Under Schedule. Enter the planned start time in ISO 8601 format (e.g. 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.
Live Episode Location Fields
Under Location on the Live Episode sub-tab. Includes Location Name (human-readable place), Geo (latitude,longitude coordinates), Relationship (describes how the location relates to the content, e.g. creator), and Country Code (two-letter ISO country code, e.g. US). These are specific to the live episode and do not affect the channel-level location.
⚠️
After saving an episode, an ⚠ Unsaved Changes banner appears at the top. Click Generate Feed (the floating button at the bottom-right of the screen) to rebuild the XML with your latest episodes. Episodes only appear in the feed XML once generated.
📋

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.

Episode Cards
Play Button (▶)
Click the blue circle to play the episode's audio directly in the browser. The button turns green while playing. Click again to stop.
Edit Button
Switches to Tab 4 (Create Episode) with all of this episode's fields pre-filled for editing. A blue banner at the top of Tab 4 confirms you're in edit mode. When finished, click Save Episode — the episode is updated in place and the edit mode banner is dismissed. Click Cancel Edit to discard changes.
Expand / Collapse (▼ chevron)
Click anywhere on the episode row header to expand it and see a summary of all its metadata: GUID, file URL, duration, type, number, description, and more.
Delete Button
Permanently removes the episode from the feed. A confirmation dialog appears. This cannot be undone.
💡
Episode order in the list reflects the order they'll appear in the feed XML. Episodes are sorted by publication date — most recent first — which is how podcast apps expect them.
🔍

Tab 6 — View Feed

Inspect, search, edit, copy, and download your generated XML

Generating the Feed
Generate Feed (button)
Click this button — visible at the bottom of any tab — to compile all your form data into a valid RSS XML document. The result is displayed in the code viewer on this tab. This is also how changes are saved; the ⚠ Unsaved Changes banner disappears after generating.
Feed Viewer Controls
↑ Top of Feed
Scrolls the XML viewer back to the very beginning of the feed. Useful when you've scrolled deep into a long document and want to quickly return to the top. Also available as a ↸ Back to Top button in the status bar below the viewer.
Format XML
Re-indents and pretty-prints the raw XML in the viewer for easier reading. Useful if the XML was pasted or generated without consistent spacing. Has no effect on the feed's content — purely cosmetic reformatting.
Copy
Copies the entire XML text to your clipboard. Paste it into a .xml file on your web server or hosting provider. A brief ✓ Copied to clipboard confirmation appears in the status bar.
Download
Downloads the XML as a 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.
Edit / Done
Toggles the XML viewer between read-only and editable mode. You can manually edit the raw XML when in edit mode — useful for advanced tweaks not covered by the form. The viewer's border turns blue to indicate editing is active. Click Done to lock in your edits; the modified XML will be used going forward.
Resize the Viewer
Drag to Resize
The XML viewer can be resized by dragging the lower-right corner — click and drag to make the viewer taller or wider to suit your screen. The minimum height is 200px.
Search
Find in Feed
Type any text in the search box and click Search (or press Enter) to find all matches in the XML. A count shows (e.g. 1 of 4). Use the and arrow buttons to step through matches. Click Clear Search to dismiss the highlights and reset the count. The viewer scrolls to and highlights each match.
Status Bar
Status Bar (bottom of viewer)
Shows stats about the current feed: number of episodes, total line count, character count, and estimated file size. Useful for keeping an eye on feed size — very large feeds (many hundreds of episodes) may slow down some podcast apps.
Ready to go live? Once generated and downloaded, host your 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.

⚠️
Before you submit: Your 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

Apple Podcasts is the largest podcast directory and a critical first submission. Approval typically takes 24–72 hours.

  1. Ensure Tab 2 is complete — Apple requires Artwork URL (1400–3000 px), Owner Email, Author, and at least one published episode in the feed.
  2. Go to podcastersconnect.apple.com and sign in with your Apple ID.
  3. Click + Add a Show, then paste your feed URL into the field provided.
  4. Apple will validate your feed. Fix any errors flagged — common issues include missing artwork dimensions, no episodes, or invalid dates.
  5. 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.
  6. 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.
💡
Your Apple Podcasts page URL (e.g. 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 (Podcast 2.0)

Podcast Index is the open, decentralised directory powering Podcast 2.0-compatible apps (Fountain, Podverse, Breez, CurioCaster, etc.). Submission is instant and free.

  1. Recommended: generate a Podcast GUID first (Tab 2 → Podcast GUID → Generate). This is how Podcast Index uniquely tracks your show across feed URL changes.
  2. Go to podcastindex.org/add-feed.
  3. Paste your feed URL and click Add Feed. No account required.
  4. Podcast Index indexes your feed within minutes. Search for your show name on the site to confirm it's listed.
  5. 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.
Once on Podcast Index, your show automatically appears in all Podcast Index-powered apps without separate submissions. This includes Fountain, Podverse, Podcastaddict (via Podcast Index), and dozens of other apps.
🟢 Spotify

Spotify has its own submission portal separate from Apple.

  1. Go to podcasters.spotify.com and sign in or create a free Spotify account.
  2. Click Get startedAdd your podcast.
  3. Paste your RSS feed URL and follow the verification steps (Spotify will send a code to your owner email).
  4. Complete your profile: confirm artwork, categories, and language. Approval is usually within a few hours.
Other Recommended Directories
Amazon Music / Audible
Submit at music.amazon.com/podcasts/submit. Sign in with an Amazon account and paste your feed URL. Appears in Amazon Music and Audible podcast sections.
iHeart Radio
Submit at iheart.com/content/submit-your-podcast. Free submission; review typically takes a few days.
Podchaser
Submit at podchaser.com/creators/add-podcast. Podchaser is a podcast database used by many aggregators. Claiming your show also gives you access to analytics and review management.
TuneIn
Submit at tunein.com (submit form). TuneIn reaches smart speakers, car dashboards, and radio apps.
Pocket Casts / Podcast Addict
Both apps automatically pick up your show from Apple Podcasts and Podcast Index. No separate submission needed once you're listed in those two directories.
After Submission — Updating Your Feed

Directories check your feed URL periodically (usually every 1–24 hours). When you add a new episode or update your show info:

  1. Make your changes in the form (load your feed first if needed).
  2. Click Generate Feed to rebuild the XML.
  3. Download the updated feed.xml and re-upload it to the same URL on your server — overwriting the old file.
  4. Directories will detect the change on their next poll. No re-submission is needed.
⚠️
Never change your feed URL after submitting. Directories are linked to that specific URL. If you must move it, use a 301 redirect from the old URL to the new one and add a <itunes:new-feed-url> tag to the old feed. Apple Podcasts has a formal migration process in Podcasters Connect for this.