---
title: About the EXT-X-VERSION tag
framework: http-live-streaming
role: article
role_heading: Article
path: http-live-streaming/about-the-ext-x-version-tag
---

# About the EXT-X-VERSION tag

Find the protocol version that corresponds with the HLS features your app supports.

## Overview

Overview The EXT-X-VERSION tag indicates the compatibility version of the Playlist file. This file, its associated media, and its server must comply with all provisions of the IETF Internet-Draft of HTTP Live Streaming 2nd Edition (or earlier specifications) describing the protocol version indicated by the tag value. A Playlist file that doesn’t contain an EXT-X-VERSION tag must comply with version 1 of this protocol. Support for M3U8 Playlists was introduced with iOS 3.0, Mac OS X 10.6, and Safari 4. High-level features  |   |   |   |   |   |   |   |   |   |   |   |  Backward compatibility important: Older clients ignore backward-compatible features and will still play back the content in some form. Specify only the protocol version that’s required for backward compatibility in a given feature. For example, you don’t have to specify protocol version 5 if you’ve just added SUBTITLES. The following features aren’t backward compatible. Older clients may fail to play the content if you use these features but don’t specify the protocol version where they were introduced: You must use at least protocol version 2 if you have IV in EXT-X-KEY. You must use at least protocol version 3 if you have floating point EXTINF duration values. You must use at least protocol version 4 if you have EXT-X-BYTERANGE or EXT-X-IFRAME-ONLY. You must use at least protocol version 5 if you specify the SAMPLE-AES encryption method in EXT-X-KEY, or if you have KEYFORMAT and KEYFORMATVERSIONS attributes in EXT-X-KEY, or if you have EXT-X-MAP. You must use at least protocol version 6 if you have EXT-X-MAP in a Media Playlist that does not contain EXT-X-I-FRAMES-ONLY. You must use at least protocol version 7 if you specify SERVICEn values for the INSTREAM-ID attribute of EXT-X-MEDIA. You must use at least protocol version 8 if you use variable substitution. You must use at least protocol version 9 if you have EXT-X-SKIP. You must use at least protocol version 10 if you have EXT-X-SKIP that replaces EXT-X-DATERANGE tags in a Playlist Delta Update. You must use at least protocol version 11 if you have QUERYPARAM attribute in EXT-X-DEFINE. You must use at least protocol version 12 if you have attributes that start with  “REQ-”. Specifications The following tables list the versions of specifications where specific features are described, along with the corresponding iOS release that supports those features. note: Over time, HLS has been described by different documents: draft-pantos-http-live-streaming, which became RFC 8216, and now draft-pantos-hls-rfc8216bis. draft-pantos-http-live-streaming and RFC 8216  |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |  draft-pantos-hls-rfc8216bis  |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |  important: Always use the most recent version of the HTTP Live Streaming tools to generate or test your HTTP Live Streams.

## See Also

### Stream creation

- [Example playlists for HTTP Live Streaming](http-live-streaming/example-playlists-for-http-live-streaming.md)
