Last updated: March 2026
Every engagement begins with a clear, written scope document — agreed upon before any payment is made. This document outlines features, technology choices, design specifications, integrations, and deployment details.
Work outside the agreed scope (new features, additional integrations, design changes beyond the original spec) will be quoted separately as a change order. No surprise charges.
Projects typically deliver within 5–14 business days depending on complexity. You'll receive:
All projects are fixed-price. No hourly billing, no scope creep surprises.
Work does not begin until the deposit is received. Deliverables and source code transfer upon final payment.
Each project includes two rounds of revisions after the initial delivery. Additional revisions are billed at $150/hour. Scope changes (new features, new integrations) require a separate quote.
Upon final payment, you own all custom code and designs created for your project. Open-source libraries and frameworks retain their original licenses. BK Solutions retains the right to showcase the work in our portfolio and retains ownership of any pre-existing tools or frameworks used.
We operate async-first — email, Slack, or text. You'll receive daily written updates during active builds. Calls are available for kickoff, milestone reviews, and delivery walkthroughs. Response time: within 4 business hours on weekdays.
BK Solutions' total liability is capped at the total amount paid for the engagement. We are not liable for indirect, incidental, or consequential damages. Bug fixes are included during the support period at no additional cost.
All client information — business data, credentials, proprietary processes — is treated as confidential. Formal NDAs are available upon request before project kickoff.
Three delivery options:
Environment variables and secrets are never shared directly — .env.example files are provided instead.
Optional ongoing support is available at $997/month:
Cancellable with 30 days notice. No long-term contracts.
This agreement is governed by the laws of the State of Arizona. Any disputes will be resolved through good-faith negotiation first, then binding arbitration in Maricopa County, Arizona if necessary.