
How I Built an AI Proposal Generator That Writes in Your Voice (Not a Generic AI Voice)
Most AI proposal tools make everything sound the same. Here's how I built one that actually writes like the freelancer using it, and why that's harder than it sounds.
Every AI proposal tool I tried before building my own had the same problem. You'd type in a few details about the project, hit generate, and get back something that sounded like every other AI-written proposal. Same phrases. Same tone. Same slightly-too-polished sentences that make a client think "this wasn't written by a person."
For a freelancer, that's a real problem. A proposal is often the first real interaction a client has with you. If it sounds like a template, it feels like one, no matter how good the offer is.
So when I built Portflow's proposal generator, the actual goal wasn't "make an AI that writes proposals." It was "make an AI that sounds like the person using it." That turned out to be a much harder problem, and here's how I approached it.
The problem with most AI writing tools
Most AI proposal generators work the same way: you give it a topic, it gives you a finished document. The AI is doing all the writing, and your input is just fuel for it.
That's exactly why the output sounds generic. The model isn't writing in your voice, it's writing in its voice, using your details. Change the freelancer, keep the same prompt, and you'll get proposals that all sound like they came from the same person, because in a sense, they did. They came from the model's default writing style, not the user's.
If I wanted proposals that actually sounded different from user to user, the AI couldn't be the one deciding how to write. It needed to learn how each specific person writes, and then write like them.
How the voice-matching actually works
Instead of asking the AI to "write a professional proposal," the system is built around a simple idea: show the AI real examples of how this person writes, then have it write new content in that same style, not a generic one.
Here's the shape of it:
Step 1: Collect real writing samples. When someone sets up Portflow, they can add past messages, proposal drafts, or even just how they normally talk to clients. This becomes the reference material for their voice, not a style dropdown like "friendly" or "formal."
Step 2: Extract patterns, not just words. The system looks at sentence length, how direct or casual the phrasing is, whether the person uses contractions, how they open and close messages, and small habits like that. This matters more than vocabulary. Two people can use the same words and still sound completely different because of rhythm and structure.
Step 3: Generate against that pattern, not a blank prompt. When a new proposal gets created, the model isn't just told what the project is about, it's also told how this specific person writes, using their own patterns as the guide. The result reads like something the user could have written themselves, just faster.
Step 4: Let the user correct it. No voice-matching system gets it perfectly right the first time. So every generated proposal is fully editable, and edits get treated as more signal. If someone consistently changes a phrase the AI generates, that's useful information for getting closer to their actual voice next time.
Why this is harder than it looks
The tricky part isn't getting the AI to write well. Most models are already good at that. The hard part is getting it to write like someone else consistently, without falling back into its own default style the moment the prompt gets even slightly generic.
Small changes matter more than you'd expect. If someone's real writing style avoids exclamation marks, uses short sentences, and never says "I hope this finds you well," even one of those slipping back in breaks the illusion completely. It's not enough to sound human, it has to sound like this specific human.
That's the difference between a tool that writes proposals and a tool that writes proposals for you, in a way that actually feels like you wrote them.
Why this matters for how fast you can send a proposal
The real point of doing all this isn't just "cooler AI." It's speed with no drop in quality. A freelancer who gets a project inquiry can have a proposal that actually sounds like them ready in minutes instead of an hour, without sending something generic that quietly signals "this was AI-generated" to the client. Getting a proposal out fast, while it still sounds like you, is often the difference between winning the project and getting beaten to the reply.
If you want to see it in action, you can try it inside Portflow.