Good notifications are timely, relevant, and precise. If your page asks for permission to send notifications on page load, those notifications may not be relevant to your users or their needs.
How the Lighthouse notification audit fails
Lighthouse flags pages that request notification permissions on load:
Lighthouse checks all JavaScript executed on page load.
If the code calls notification.requestPermission()
,
and notification permission has not already been granted, the audit fails.
If notification permission was granted to a page before the audit, Lighthouse can't identify any notification permission requests. So, make sure to reset permissions before running the audit.
Lighthouse reports the URL and line number of each request for notification permission.
How to ask for users' notification permissions responsibly
Remove all calls to notification.requestPermission()
that occur on page load.
To provide a better user experience:
- Offer to send users a specific type of notification.
- Present the permissions request after users opt in to the notification type.