A small icon (aka app icon) may be displayed when there is not enough space to display the notification itself. It may also be displayed inside the notification.
The current plan is to not show the badge on Desktop, so it will only be used on Android.
Unlike on Android, on desktop there is no notification center or status bar to display the badge in to represent the notification, and that's really the main purpose of the badge.
Attribution to Chrome has been used in the past as an argument for using a badge inside a notification, but if it's a custom one that no longer makes sense. On desktop we still display the origin string to both indicate this is a web notification, and attribute which site it came from.
There is no good space left for another icon, web notification layouts are quite busy already. There's an x for closing, and a cog for settings, using the top right and bottom right corners. Then there's the large icon, the title, body, and origin. Optionally, there are up to two buttons with icons.
Overlaying the badge on top of the main icon has been explored, to save space. However, this may make things look worse rather than better. If done like on Android (Material convergence has been a goal) that means reducing the size of the main icon, applying a circular mask, partially overlaying that with a smaller circle, and placing the badge (possibly painted white) on top of that. This is all very specific and restrictive for a web API that is used on multiple platforms using a different look and feel. Not displaying it on desktop actually makes more sense in this case.
The specification already marks the badge as optional, so this conforms.
Comment 1 by mvanouwe...@chromium.org
, Mar 2 2016