Users can configure or disable specific notification types
Why it matters
Notifications that fire unconditionally — with no user-facing toggle to silence them — violate the Chrome Web Store User Data FAQ expectation that users control communication from installed extensions. A user who wants daily summaries but not real-time alerts has no recourse except disabling notifications at the OS level, which also silences other apps. This drives uninstalls and triggers Chrome Web Store policy review flags for pushy or invasive behavior, and makes the extension non-compliant with enterprise deployment policies that require per-feature user control.
Severity rationale
High because users cannot silence unwanted notifications without OS-level action, driving uninstalls and review penalties.
Remediation
Add per-category notification toggles to the options page and have the background worker check chrome.storage.local preferences before every chrome.notifications.create call. Wire the checkboxes in options.html and guard dispatch in background.js:
chrome.storage.local.get(['notifPrefs'], ({ notifPrefs = {} }) => {
if (notifPrefs.alerts === false) return;
chrome.notifications.create({ /* ... */ });
});
Include at minimum a master toggle plus one toggle per notification category.
Detection
-
ID:
notification-config -
Severity:
high -
What to look for: Examine the options page for notification preference settings. Check whether users can toggle individual notification categories on or off (e.g., "Daily summary", "Alerts", "Updates"), set quiet hours, or disable all notifications. Verify that the background script reads these preferences before dispatching notifications. Count all instances found and enumerate each.
-
Pass criteria: The options page includes at minimum a master toggle to disable all notifications. Ideally, each notification type has its own toggle. The background script checks preferences before calling
chrome.notifications.create. At least 1 implementation must be confirmed. -
Fail criteria: No notification settings found in options page. Notifications fire unconditionally regardless of user preferences. No way to disable specific types or all notifications.
-
Skip (N/A) when: The extension does not use
chrome.notificationsAPI at all. -
Detail on fail: Describe the missing control. Example:
"Options page has no notification settings — users cannot disable or configure any notification types"or"Only a master toggle exists; individual notification categories cannot be independently disabled." -
Remediation: Add notification preferences to your options page:
<!-- options.html --> <fieldset> <legend>Notifications</legend> <label><input type="checkbox" id="notif-alerts" checked /> Alerts</label> <label><input type="checkbox" id="notif-summary" checked /> Daily summary</label> <label><input type="checkbox" id="notif-updates" /> Extension updates</label> </fieldset>// In background script, check preferences before notifying chrome.storage.local.get(['notifPrefs'], ({ notifPrefs = {} }) => { if (notifPrefs.alerts !== false) { chrome.notifications.create({ /* alert notification */ }); } });
Taxons
History
- 2026-04-18·v1.0.0·Initial import from extension-ux-performance·automated