Example project scopes.
A written quote for what you actually need.
Pick the closest package, then add or remove pages and features in your written quote. Prices are fixed before we start, from $1,500 for a site of up to 7 pages. No minimum project size and no hourly billing on the build itself. Pay 30% to start and 70% when the site is done, or agree another schedule in writing. You own the code, the design files and the accounts at the end.
The price moves with how much content you have, what the site connects to, what has to be moved without breaking, and who has to sign off, not page count alone.
Website planning examples
Starter
Small business sites, up to 7 pages. You edit your own words, images and business details, and we set it up and train you on it.
Starting package · exact scope in proposal
Typically delivered in 1 to 2 weeks.
- ✓Up to 7 custom pages, with the exact templates and content responsibilities listed in scope
- ✓A content editor for your words, images and business details, set up for your pages, with documentation and training
- ✓A Next.js deployment, with the code, the environments and who does what at handover all written down
- ✓90+ Lighthouse performance target on both mobile and desktop for the agreed representative pages
- ✓Three recorded pre-handover runs per agreed page/profile; every run must meet the target
- ✓Mobile-First Build (designed on mobile screen first, then scaled up, not the other way around)
- ✓Hosting and third-party service options documented before approval
- ✓15 business days of included support for the agreed deliverables; start point and coverage stated in the accepted project terms
Growth
8 to 20 pages, a Sanity CMS you edit yourself, new build or full move.
Starting package · exact scope in proposal
Typically delivered in 2 to 4 weeks.
- ✓8 to 20 Page Custom Site (full marketing site with service pages, case studies, and resources)
- ✓Sanity CMS Integration (your team updates content without touching code)
- ✓Blog migration with every URL listed, a redirect map, metadata carried across, and monitoring after launch
- ✓90+ Lighthouse performance target on mobile and desktop, with three passing runs per agreed page/profile
- ✓Hosting and third-party service costs listed before approval
- ✓30 business days of included support for the agreed deliverables; start point and coverage stated in the accepted project terms
The scope, when you pay, what is warranted and what happens if something is wrong are all confirmed in the written project terms.
Moving off WordPress? See the full migration scopeScale
More than 20 pages, a large catalogue, subscriptions or custom commerce logic, or more than one language.
Starting package · exact scope in proposal
Typically delivered in 3 to 6 weeks.
- ✓Headless E-Commerce (Shopify or WooCommerce backend, Next.js frontend. The speed of custom, the admin of Shopify)
- ✓More than 20 pages or templates for products, collections, content, and landing pages
- ✓Reviewed integrations such as Klaviyo, HubSpot, Salesforce, Stripe subscriptions, or another documented API
- ✓90+ Lighthouse performance target on mobile and desktop, with three passing runs per agreed page/profile
- ✓Sanity CMS + Content Ops (content model designed for your editors, not generic templates)
- ✓30 business days of included support for the agreed deliverables; start point and coverage stated in the accepted project terms
Those delivery ranges overlap on purpose. A complex Growth build can take as long as a simple Scale one, and the dates that bind us are the ones in your accepted written terms.
Anything bigger is quoted after a call. Enterprise scope, multi-region e-commerce, custom SaaS platforms and complex integrations are scoped together first, because we cannot quote them without understanding the work. See our custom engineering service.
If none of these match what you have, call +1 (302) 773-8982 or email info@pandacodegen.com and we will quote it.
How the written quote works.
Scope before price
We first inventory the pages, content, integrations, constraints, stakeholders, and acceptance tests. The written project summary then states what is included, excluded, and assumed.
Written change control
A common payment option is 30% at onboarding and 70% at the delivery milestone defined in the accepted project terms, but another written schedule may be agreed. Revision limits are stated before work begins, and material out-of-scope requests receive a separate written estimate and require approval.
Flexible package starting points
These options may be used, changed, or omitted. A signed agreement or a clear quote or order summary accepted in email or chat supplies the project-specific detail and controls.
Contract clarity
Compare the scope, not just the headline price.
Evidence standard
Review the migration scope, baseline, implementation, measurement date, and limitations before relying on a result figure.
Common Questions
What can I change myself, and what still needs you?
There are three levels, and the middle one is the part people miss. You change what the site says. You also operate what it already does, so if your build includes discounts, bookings or a publishing workflow, running those is yours, not a support ticket. We build what it cannot do yet. In practice you edit the words on any page, swap images, update prices, dates, opening hours, staff and service entries, and add new items to any list the site already has, such as a new service or a new team member. That covers almost everything a business changes month to month. What still comes to us is a new page template, a new feature, or a change to how something works, and each is quoted before it starts. Here is a test you can run on your current site right now, before you speak to anyone: open your admin and count what you can actually edit. If the only thing listed is the blog, the rest of your site is hard coded, and every change that is not a blog post needs a developer.
Do you have a minimum project size?
No. We start at $1,500 for a site of up to 7 pages, and a small project is quoted the same way as a large one. Most custom Next.js agencies will not start below $10,000, and several will not start below $50,000, so a small business is often turned away before it gets a price. You get a fixed price before we begin either way.
Which package should I start with?
Starter begins at $1,500 for up to 7 pages, and you can edit your own words, images and business details. Growth begins at $3,500 for 8 to 20 pages, adds a content model built around your own collections, and if you are moving from another platform, every old link forwards to the right new page. Scale begins at $5,000 for more than 20 pages, or a large catalogue, subscriptions or custom commerce logic, or more than one language. Anything bigger is quoted after a call. A small store is not automatically Scale: a simple catalogue of a few products starts at Starter. Pick the closest one. Extra pages or features are priced and written into your quote before anything starts. If none of these match what you have, call +1 (302) 773-8982 or email info@pandacodegen.com and we will quote it.
Do I need a long contract for every project?
No. Most projects run on a short written quote you accept by email. Only regulated or complex work needs a longer signed agreement. Either way, the written quote is what counts.
When do I pay?
Usually 30% to start and 70% when the work is delivered. We can agree a different split in writing. Your quote also states the currency, any tax, when payments are due, and what happens if the project pauses or is cancelled.
What if my project is bigger than Scale?
Bigger stores, apps, multiple regions or heavy integration work are priced on their own after one call. Your quote names the team, what gets built, what does not, and the dates.
What support is included?
Usually 15 working days after launch on Starter, and 30 on Growth and Scale, for fixing anything that is not working right and small tweaks. Your quote states the exact period and what it covers. New features, extra pages and changes to other people's tools are quoted separately.
When does the 100% refund apply?
Where your quote includes it, you get your money back if we fail to deliver what the quote promised. Your quote says exactly what triggers it and how it is checked. It does not apply because you changed your mind, want a new direction, or want work that was never in the quote.
Can't we just make our current WordPress site faster instead?
Often yes, and sometimes that is the right answer. Caching, image handling and removing unused plugins will make a slow site measurably faster without rebuilding it. What that does not change is the shape of the problem: the same plugin count still needs updating, and the next update can still break checkout. So the question is not whether the site can be made faster, it is whether you want a faster version of the current arrangement or a different arrangement. If your diagnosis lands on one plugin or one slow API call, repair it. We publish guides that talk people out of migrations for exactly this reason.
Should we wait until after our busy season?
That is usually a priorities question rather than a timing one, and it is worth separating the two. A migration of the size we quote most often is a few weeks of work, and your existing site stays live until cutover, so waiting three months mostly moves the same three weeks later. The costs that continue while you wait are the ones you already pay: the plugin and hosting bills, the maintenance time, and the risk that a plugin update breaks something during your busiest period. If the real constraint is that nobody on your side has capacity to review work, that is a genuine reason to wait and we would rather you said so.
How do I justify this to a business partner or my board?
Most people in that position need support rather than permission, so tell us what they will want to see and we will put it in the scope document. That is usually three things: what exactly is being delivered and what is excluded, what the acceptance criteria are, and what happens if we fail to deliver them. Because pricing is fixed and the performance target is written in with a defined test method, the document itself answers most internal objections without you having to relay them.
What if the honest answer is that we should not migrate?
Then we say so, and there is no charge for reaching that conclusion. A migration is worth doing when the platform has become the constraint: the plugin stack is the product, nobody will update anything because something breaks each time, or nobody can say what code runs during a purchase. It is not worth doing because a page is slow, because a single feature is missing, or because custom code sounds better. We would rather lose the project than deliver a rebuild that changes the number without explaining it.
How should I compare providers?
Look past the headline price. Compare what is actually built, how your links get moved, what has to be working before you sign off, who owns the code, what you still pay monthly, and what happens if something breaks.
What determines the quote?
How many pages and posts you have, how much of the design is custom, what the site connects to, whether you need accessibility or compliance work, how many people sign off, and your deadline.
What happens before you quote?
We look at your current site, what you want it to do, how big it is, what it connects to, your timeline and your budget. Then we write down what we assumed and what we still need to know, before quoting.
How is the 90+ performance target checked?
Your quote names which pages we test and on what device. Each one has to score 90 or better on Google PageSpeed, three times in a row, before we hand over. That is a test-bench score. It is not a promise about your rankings, your revenue, or what happens after someone adds a new tool to the site.