Here is the version of personalization most teams actually run: insert first name, insert company, send to eight hundred people, wonder why reply rate is 3%.
The tags are not the problem. The belief that tags are personalization is.
What readers actually notice
“Hi Sarah, I saw you work at Northbridge” is recognisable as a mail-merge within about a second. Everyone has received hundreds of them. The data being correct does not make it personal, it just makes it correctly automated.
Worse, prospects compare notes. On LinkedIn especially, people screenshot outreach and post it. A template that renders identically across a hundred recipients is a template in public.
Personalization mostly comes from the list
This is the part that gets skipped, because it is not a writing problem.
Someone who commented on a post about outbound hiring last week hands you a specific opener for free. Someone who registered for an event on a topic gives you shared context. A name pulled from a title filter gives you nothing, and no amount of clever writing invents it.
So if your openers keep coming out generic, the fix is upstream. Doreach pulls audiences from post engagers, event attendees and group members precisely because those sources carry a reason to connect built in.
Then vary your own wording
Once the angle is right, the remaining risk is sameness.
Spintax lets you write several natural ways to say the same thing and have one picked per send:
{Saw|Noticed} your {post|comment} on outbound hiring
Three greetings, three transitions and two asks is eighteen combinations from one message. That is the difference between a detectable pattern and a set of similar messages a busy person wrote.
Fallbacks, always
Every merge tag needs one. Write {{first_name|there}}, never {{first_name}}.
An empty tag renders as nothing, which is how “Hi ,” reaches four hundred people. Doreach supports seven tags and blocks a campaign from launching on an unclosed or unsupported one, with the current list in merge tags and spintax.
The part worth doing by hand
Generated outreach is recognisable. Prospects have read enough of it to spot the shape before they finish the first line, and the shape is what gets ignored.
What scales without reading as generated is your own writing, varied properly and sent to audiences that give you something true to say. That is maybe twenty minutes per campaign, and it is the twenty minutes that decides the reply rate.
So write it once, well. Then let spintax, fallbacks and pacing carry it.
What to do next
Take your current campaign and check two things. First, could the opening line be sent unchanged to a different prospect? If yes, change the audience source rather than the sentence. Second, is the message one fixed string? If yes, add two alternatives each for your greeting and your ask before the next send.