Professional Services
Proposals that stopped eating the fee-earners' evenings
A consultancy assembled proposals from its own past work instead of from last week's near-miss document.
This is an illustrative composite. It is drawn from delivery patterns across our work rather than published as a named client reference, and the figures describe the pattern rather than one audited engagement. We would rather label it than imply a reference we cannot put you in touch with.
- Industry
- Professional Services
- Arc
- Intelligence
- Size
- 35 staff
Context
A 35-staff advisory firm where every proposal was written by the partner who would deliver the work. The firm had eleven years of proposals, scopes and closing reports on a file server, organised by the person who happened to save them.
The problem
A proposal took a partner six to nine hours, almost all of it finding and adapting a similar past one. The search was a person remembering. Work the firm had genuinely done well went uncited because nobody recalled it, and the same three recent projects appeared in every proposal regardless of fit.
What we did
- 01Indexed eleven years of documents with the metadata that actually predicts relevance — sector, engagement shape, team size, outcome.
- 02Built retrieval that returns past passages with their source document and date, so a partner can check provenance before reusing a claim.
- 03Assembled a proposal draft from retrieved sections, leaving every number and commitment blank for a human to fill.
- 04Produced the visual sections through JJ Canvas against the firm's brand rules, with a partner approving every asset.
- 05Measured against the partners' own blind ranking of which past engagements were the best fit.
Architecture
Nothing here is a black box. You can read the architecture before you sign, and you own it after.
- 01CorpusEleven years of documents chunked and embedded as halfvec(3072), with sector and outcome metadata per chunk.
- 02RetrievalJJ Atlas with tenant-scoped retrieval and a SECURITY INVOKER match function — retrieval cannot cross an org boundary.
- 03AssemblyDraft sections composed from retrieved passages, each carrying its source document and date.
- 04CommitmentsPrice, scope and date fields are left empty by construction. No agent on this platform can fill them.
- 05VisualsJJ Canvas renders the diagrams and cover under brand governance, with partner approval before export.
Results
The numbers the work closed against.
- design target for a first proposal draft
- 6-9 hrs → 90 mindesign target for a first proposal draft
Basis: Six to nine hours is observed partner time across a quarter's pipeline. Ninety minutes assumes retrieval replaces the search and the partner still writes every commitment by hand.
- target increase in distinct past engagements cited per quarter
- 3.1×target increase in distinct past engagements cited per quarter
Basis: Arithmetic: the observed baseline cites three recent engagements repeatedly; the target is the count of distinct engagements retrieval surfaces above a relevance threshold, against that baseline.
- price, scope or date fields populated by an agent
- 0price, scope or date fields populated by an agent
Basis: A structural constraint, not a forecast: those fields are left empty by construction and no model has a write path to them.
- of back catalogue made searchable by fit rather than by memory
- 11 yearsof back catalogue made searchable by fit rather than by memory
Basis: A scope figure: the corpus indexed with sector, engagement shape, team size and outcome metadata.
Stack
- Next.js
- Supabase Postgres
- pgvector halfvec
- JJ Canvas
- Vercel
- Zod
Related work
A security review answered in an afternoon
An accountancy practice stopped losing three weeks per client to evidence-gathering by making the trail a by-product of the work.
4 hours target time to answer a 90-question security review
55 staffEvery recommendation carrying its reasoning
An advice firm made the suitability basis a by-product of giving advice rather than a document written afterwards.
100% of recommendations carrying a cited suitability basis
Does this look like your business?
Tell us what is slow and what it is costing. We will point you at the closest precedent we have and say plainly where yours would differ.
Scope it with us