• Do not implement Auto-play. This will result in a bad user experience for the user with audio they were not expecting to hear. 
  • Do not Pre-load - unless the intent was clearly to play the podcast.
  • Use header information - located at the start of the podcast to prevent a full download when not needed.
  • File request - For a full download, ask for the entire file in one go. For a progressive download, ask for the file in slices (byte range). This way a full download can be distinguished from a progressive download.
  • Do not modify the enclosure URL when requesting media, don’t add extra parameters.
  • Do not cache podcast episodes on your servers. Always download the latest episode from the enclosure URL for every app user wanting to listen.
  • Use the GUID -- as opposed to episode URL, title, publication date, etc. -- to identify new episodes in the RSS feed that should be automatically downloaded to a user’s device.  The GUID is designed to be persistent through changes to hosting environment, titles, etc.
  • Employ an “automatic download unsubscribe” behavior (e.g. - stop auto downloads after 5 episodes of non-listens).
  • Do not automatically download all episodes (e.g. back catalog episodes) by default. This creates unnecessary drain on the publishers’ servers and consumes users’ bandwidth.