Skip to content

Knowledge · Custom Web Design

The Mid-Market B2B Website RFP Template (and Why Most RFPs Are Broken)

14 days kickoff → live $3K–$15K+ scope-tiered WCAG 2.1 AA baseline

Most mid-market website RFPs come back to the buyer with proposals that don’t match. Every agency interpreted the brief differently. Comparing $12K to $45K proposals becomes impossible because each scope is different. Here’s an RFP template that fixes this — and the meta-question of whether you should be running an RFP at all.

№ 01When you should run an RFP

RFPs make sense when: the project is $25K+, there are 3+ internal stakeholders, you have specific technical requirements (CRM integration, headless CMS), and you need a paper trail for procurement.

RFPs DON’T make sense when: the project is under $15K, you’re a founder or sole decision-maker, or you have a clear preferred vendor already. The RFP process costs you 3-4 weeks of calendar time. For sub-$15K work, that’s the entire project.

№ 02The questions every RFP should ask

  • Your last 3 projects, with measurable outcomes. Not ‘describe your process’ — show me results.
  • Lighthouse scores for 3 recent live sites. Filters out the ‘pretty wallpaper’ agencies.
  • Hourly or fixed pricing? Fixed-price agencies have to scope discipline. Hourly agencies have an incentive to expand scope.
  • Who specifically will work on this project? If the answer is vague, you’re being sold to a sales rep and built by a junior.
  • What’s NOT included in your proposal? Forces honesty about scope.
  • What does the timeline look like, week by week? Detail = real planning. Vague answer = no real plan.
  • How do you handle change requests? The answer here determines whether your project comes in on budget.

№ 03The questions you should NOT ask

  • ‘Why should we choose you?’ (Every agency has the same answer.)
  • ‘Are you passionate about our industry?’ (They’ll say yes regardless.)
  • ‘What’s your design philosophy?’ (Useless. Look at the portfolio.)
  • ‘How will you become an extension of our team?’ (Marketing-speak filter.)

These are throwaway questions every agency has pre-written answers for. They yield no comparison signal.

№ 04Specifying scope so proposals are comparable

The reason proposals come back uncomparable: every agency makes assumptions to fill gaps in the brief. Close the gaps. In your RFP, specify:

  • Page count and types. ‘Homepage, 6 service pages, 4 case studies, About, Pricing, Contact, FAQ = 14 pages.’
  • Content authoring scope. ‘We provide all copy’ or ‘We need structural copy authored, we’ll review.’
  • Photography source. ‘We provide stock’ or ‘We need custom photography directed’ or ‘We have a photographer, you brief them.’
  • Integration list. ‘HubSpot, GA4, Hotjar, Cloudflare.’
  • Timeline expectations. ‘Launch by [date].’
  • Maintenance scope. ‘Launch only, no ongoing’ or ‘Care Plan for 6 months post-launch.’

№ 05Comparing proposals once they come back

Build a comparison matrix: agency / total price / pages included / weeks to launch / who’s doing the work / what’s NOT included / change request policy / Lighthouse benchmark of recent sites.

The cheapest is rarely the right answer. The most expensive isn’t automatically the best. The right answer is the one whose ‘what’s NOT included’ you can live with, whose timeline matches yours, and whose recent work shows execution quality you trust.

What to avoid

  • Sending the same generic RFP to 12 agencies. Each is reading it as low-effort. You get low-effort proposals back. Send a specific RFP to 4 vetted agencies; you get 4 specific proposals.
  • Choosing on price alone after running an RFP. If price was your primary filter, you wasted the RFP cycle — you could have just asked for quotes. RFPs make sense when scope discipline matters more than price.
  • Letting procurement run an RFP for marketing work. Marketing buyers and procurement buyers ask different questions. Procurement optimizes for vendor risk; you should be optimizing for outcome quality. The two diverge.