|This article or section contains information about a feature from a future version of Scratch that is unreleased and is subject to change. Please cite any info added in order to prevent speculation.|
Scratch 3.0 is an announced version of Scratch which is to succeed Scratch 2.0. It has been announced that Google will affiliate with Scratch for this release. It has also be announced that Scratch Blocks, a library forked of Google's Blockly, will be used; and the horizontal placement of blocks, used in ScratchJr, will be applied, alongside with Scratch's vertical blocks. An alpha release is planned for late 2017.
Scratch 3.0 will be written in HTML5, which is a general term for the latest HTML, CSS, and JS. Scratch 3.0 will primarily use JS, WebGL, Web Workers, and Web Audio. JS is a widely supported language, and WebGL was picked for its speed.
Scratch 3.0 will be a new implementation of a full Scratch interpreter and editor, which will be different from previous implementations of Scratch project players for html5, most notably the HTML5 Player, the Phosphorus Player and the Sulfurous Player.
The first prototype of Scratch 3.0 was released to participants of Google's Youth I/O. Scratch 3.0 worked with LEGO WeDo 2.0.
At the 2016 Scratch Conference, Scratch 3.0 was discussed in the "What's Next for Scratch?" panel. It was mentioned that Scratch 3.0 had a barebones VM and an audio engine. The Scratch Team stated that they got Scratch 3.0 to beep the previous day. 
A simple roadmap for Scratch was mentioned at 2016's Scratch Conference. The Scratch Team wants to add a rendering engine in a few weeks. They plan to have a prototype by the end of 2016, and an alpha by the end of 2017. 
The following is a list of features that Scratch 3.0 might or will contain:
- Custom reporters.
- Text-drawing pen blocks.
- iOS and Android support via an HTML5 based editor. 
- A 16:9 option for higher quality projects.
- Projects (possibly) play at 60 ticks and frames per second, rather than 30 (and previously 40).  
- A horizontal block layout. This is similar to how ScratchJr displays blocks. The new layout is being added because it is more compact, and hence will be easier to use on mobile devices. 
- "Set pen transparency to" and "change pen transparency by" blocks. 
- The blocks interface
- Virtual machine (the thing that makes a Scratch program run / work / execute)
- Rendering engine
- Audio engine
- "Editor" The "wrapper" for all of the various pieces of Scratch 3.0.