The URL.createObjectURL() static method creates a DOMString containing a URL representing the object given in the parameter. The URL lifetime is tied to the document in the window on which it was created. The new object URL represents the specified File object or Blob object.

Note: The use of a MediaStream object (not to be confused with MediaSource) as an input to this method is in the process of being deprecated. Discussions are ongoing about whether or not it should be removed outright. As such, you should try to avoid using this method with MediaStreams, and should use HTMLMediaElement.srcObject instead.

Note: This feature is available in Web Workers.


objectURL = URL.createObjectURL(object);


A File, Blob, MediaStream, or MediaSource object to create an object URL for.


See Using object URLs to display images.


Each time you call createObjectURL(), a new object URL is created, even if you've already created one for the same object. Each of these must be released by calling URL.revokeObjectURL() when you no longer need them. Browsers will release these automatically when the document is unloaded; however, for optimal performance and memory usage, if there are safe times when you can explicitly unload them, you should do so.


Specification Status Comment
File API
The definition of 'URL' in that specification.
Working Draft Initial definition.
Media Source Extensions
The definition of 'URL' in that specification.
Candidate Recommendation MediaSource extension.

Browser compatibility

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 8 [1]
(Yes) 4.0 (2) 10 15 6 [1]
In a Web Worker 10 [1]
(Yes) 21 (21) 11 15 6 [1]
MediaStream object parameter deprecated. ?[2] ? 54 (54) ? ?[2] ?[3]
Feature Chrome for Android Android Edge Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support 18 [1] 4.0 [1] (Yes) 14.0 (14) ? 15 [1] 6.0 [1]
In a Web Worker 18 [1] (Yes) [1] (Yes) 14.0 (14) ? 15 [1] 6.0 [1]
MediaStream object parameter deprecated. ?[2] ? ? 54.0 (54) ? ?[2] ?[3]

[1] With URL prefixed as webkitURL.

[2] See Chromium Issue 591719 for status.

[3] See WebKit bug 167518 for status.

See also

© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.