First working version is done. Input a client name, select a service type (SEO, Paid Ads, Social Media, Full Retainer), add a rough monthly budget, and hit generate. In about 90 seconds you get a 4-page PDF proposal ready to send.
What it does
The form collects:
- Client name and website
- Service category
- Monthly budget range
- Key objectives (2-3 bullet points the user types)
- Agency name and contact details
That feeds into a structured GPT-4o prompt that generates the proposal body. The output is then formatted into a PDF using a clean template.
What I learned building it
OpenAI's structured output mode (JSON response format) is genuinely useful here. Instead of asking for a blob of text, I ask for a JSON object with specific fields — executive summary, scope of work, deliverables, timeline, investment. Then I format those fields independently in the PDF template.
This gives much more control over the output than free-form generation.
Cost so far
$20 in OpenAI credits. Generated about 40 test proposals during development. At $0.50 per proposal (rough cost at current usage), the unit economics work fine at a $29/month price point.
What is missing
- No auth / paywall yet
- No saved proposals
- Template variety (currently one template)
- Mobile formatting is broken
Fixing these over the next week.