Scope Policy
Updated 2026-06-12Why fixed price needs fixed scope
Every build on this site has a fixed price. That only works because the scope is fixed too: the quote you pay against lists exactly what is included and exactly what is not. This page defines the boundary in advance, so neither of us argues about it mid-build.
What a revision is
Your included revision rounds cover:
- Small visual and content changes: copy edits, spacing, color within the design system, swapping images.
- Minor field changes: add, remove, or rename a field on an existing form or table.
- Reporting bugs in scoped features.
Defects get a special carve-out: if something in the locked scope plainly doesn't work, I fix it as part of delivery whether or not you have rounds left. Revision rounds are for the changes you want after seeing the build, not for holding me to the scope.
Each package lists its included revision rounds on the pricing page and on your quote.
What a change request is
A revision is not:
- A new feature
- A new integration
- A new user role
- A new workflow
- A redesign
Those are change requests. They're welcome, they're common, and they're quoted separately before any work starts. The test is simple: if it changes what the app does rather than how an existing piece looks or reads, it's a change request.
Change-request pricing
Change requests are priced from the published add-on schedule, never as open-ended hours. The common ones:
| Add-on | Price |
|---|---|
| Revision pass | $300 |
| Extra integration | $750–$1,500 |
| Stripe billing | $750 |
| AI feature | $1,000–$2,500 |
| Roles & permissions | $750 |
| Admin analytics | $750 |
| Data import | $500–$2,000 |
| Rush 48h | +50% |
| Same-week delivery | +35% |
The full schedule is on the pricing page. Anything that doesn't map to an add-on gets its own fixed quote through the same deterministic engine that priced your build.
The scope lock
Before you pay, the quote shows the included features and the exclusions side by side, and asks you to confirm one line: "I've read the scope. Changes are quoted separately." That confirmation is the scope lock.
- After the lock, the included list is the contract. Everything on it gets delivered; that's the guarantee in the terms.
- New ideas that show up mid-build go into a change-request list, quoted from the schedule above, built after the locked scope ships unless we agree otherwise.
- Quotes expire after 7 days. Scope that was never locked is just a conversation.
Lanes: one active request
Unlimited requests. One active request at a time. Async by default. AI-assisted scoping. GitHub source. Deployment included. Pause or cancel anytime.
Dev lanes don't use revision rounds; they use the queue. Add as many requests as you like. I work exactly one at a time, finish it, ship it, then pull the next. One active request is what keeps lane quality identical to fixed-price quality: no thrash, no half-finished parallel work.
A request that grows mid-flight gets split: the original ships, the growth becomes the next request in the queue. Pausing your lane preserves unused days. Lane prices and turnaround averages are on the pricing page.
Want a fixed quote against this policy? Start an AI scope and the quote will show you the lock before you pay anything.