Is It Out of Scope? — Web design
Is adding push notifications out of scope for a web design project?
Mostly yes. The visual side (a permission prompt, a notification-preferences UI) is arguably design work, but the underlying system — service workers, permission handling, a way to actually send notifications — is functionality a design engagement typically doesn't cover.
This one splits into two pieces that are easy to conflate. "Add push notifications" can mean designing what the permission prompt and any in-app notification settings look like — a legitimate, if new, design deliverable. It usually also means the actual mechanism: browser permission handling, a service worker, and a way to trigger and send notifications — real functionality that a design-only engagement was never scoped to build.
Is it out of scope?
Mostly. Designing the visual pieces (a permission prompt, a settings panel) could be scoped as a small design add-on if that's genuinely all that's being asked for. But push notifications as a working feature require functionality — permission flows, a service worker, and typically a backend to send them — that's development work, not design work, regardless of how the request was phrased.
Clause typically implicated
Clause typically implicated
Deliverables clause→ — The design SOW covers visual design of defined pages and components — a functioning notification system is application functionality outside that, even where a small design asset within it could be scoped separately.
Example contract wording
Example contract wording (illustrative, not legal advice)
I can design what a notification permission prompt or settings screen would look like as a design add-on. Making push notifications actually work — the permission handling, service worker, and sending mechanism — is development work outside our scope; I'd recommend looping in a developer, and I'm happy to hand off the design specs once we have them.
How MarginFlow flags it
MarginFlow checks whether the request is asking for a visual asset or a working feature — the language often makes this distinguishable ("design a notification prompt" vs. "add push notifications") — and classifies the functional half outside_scope while noting in the explanation that a design-only piece could plausibly be scoped separately if that's genuinely what's wanted.