WhatsApp algorithms automatically block numbers sending identical messages. Even if the text seems “natural,” but repeats word-for-word — that signals the system it’s automated.
To avoid this, we use a powerful text variation system. Each template creates a unique message on the fly, so WhatsApp perceives it as normal human conversation.
🧩 Template Syntax – Complete Reference for Advanced Spintax Variations {#template-syntax-complete-reference}
1. {option 1|option 2|option 3} — Random Selection
Selects one of the listed options:
{Hi|Hello|Hey there}
→ Hi
→ Hello
→ Hey there
Used to create “natural” variety.
2. [+, +item 1|item 2|item 3] — Shuffle with Separator
- Between two
+signs, you define a separator — comma, space, any character (or combination). - After
+, +come the items that will be shuffled in random order with the separator. - Everything between the two plus signs, including spaces, is treated as the separator.
Example:
[+, +cucumber|tomato|onion]
→ cucumber, tomato, onion
→ tomato, onion, cucumber
→ onion, cucumber, tomato
💡 You can use any separator:
[+ +cucumber|tomato|onion]→ “cucumber tomato onion”[+ and +cucumber|tomato|onion]→ “cucumber and onion and tomato”
3. !!text — Capitalize First Letter
Used when a template generates text starting with a lowercase letter, but you want it to start with uppercase.
Example:
!!welcome back → Welcome back
!![+ +good|morning] → Morning good / Good morning
4. !![+ +item 1|item 2|...] — Combination: Shuffle + Capitalize
!!capitalizes the first letter of the result.[+ +...]means shuffling with space as separator between items. Everything between the + signs counts as the separator.
Example:
!![+ +day|good] → Day good or Good day
Here’s a more complex example with <$NAME> substitution using selections and shuffles:
[+, +<$NAME>|{you're welcome|back at you}]! → "You're welcome!" or "Back at you!" (if no name)
[+, +<$NAME>|{you're welcome|back at you}]! → "John, you're welcome!" or "You're welcome, John!" or "John, back at you!" or "Back at you, John!" (if name exists)
💡 Use this method! Design templates so the message remains logical whether the name is in your database or not.
5. Nested Constructs — Combined Together
All constructs can be nested within each other:
Example:
!![+ +<$NAME>|{thanks to you too|you're welcome|likewise}]!
→ Variations:
- “John, you’re welcome!” or “John, thanks to you too!” or “John, likewise!“
- “You’re welcome, John!” or “Thanks to you too, John!” or “Likewise, John!“
If no name is provided — the result will be:
- “You’re welcome!”
- “Likewise!”
- “Thanks to you too!”
6. <$NAME> — Customer Name Substitution
If the name is known — it will be inserted:
Hi, <$NAME>! → Hi, John!
If <$NAME> doesn’t exist, the text will still be correct:
Hi, <$NAME>! → Hi!
🔍 Complete Template Example
Variable generator { - |: } {a program designed|software designed} to {generate|create} unique [+, +site descriptions|site names|{anchor texts|link texts}]. Supports [+, +[+ and +selections|shuffles]|nested syntax]. {Built-in|} input wizards significantly speed up the process of writing source text.
Can turn into dozens of logical, natural, and unique variations. For example:
Variable generator - a program designed to generate unique site names, link texts, site descriptions. Supports nested syntax, shuffles and selections. Built-in input wizards significantly speed up the process of writing source text.
🎯 Key Advantage: Every Message is Unique
- 📉 WhatsApp doesn’t detect mass messaging
- 💬 Your messages look human
- 🚫 Blocking probability is minimized
- 🧠 Templates are easy to use — but provide huge variety
💡 Practical Examples for US Market
Customer Service Response
{Hi|Hello|Hey} <$NAME>! {Thanks for reaching out|Appreciate you contacting us|Thanks for your message}. {How can I help|What can I do for you|How may I assist} today?
Possible outputs:
- Hey Sarah! Thanks for reaching out. How can I help today?
- Hello Michael! Appreciate you contacting us. What can I do for you today?
- Hi! Thanks for your message. How may I assist today?
Order Confirmation
!![+ +<$NAME>|your order #{ORDER_ID}] has been {confirmed|processed|received}! {Expected delivery|Estimated arrival|Should arrive}: {DATE}. {Thanks|Thank you} for {shopping with us|your purchase|choosing us}!
Possible outputs:
- Your order #12345 has been confirmed! Expected delivery: Jan 25. Thanks for shopping with us!
- Order #12345, Emma has been processed! Should arrive: Jan 25. Thank you for your purchase!
Appointment Reminder
{Hi|Hello} <$NAME>! {This is a reminder|Just reminding you|Quick reminder} - your appointment is scheduled for [+, +{tomorrow|{DATE}}|{TIME}]. {See you then|Looking forward to seeing you|Can't wait}!
Possible outputs:
- Hi David! This is a reminder – your appointment is scheduled for tomorrow, 2:00 PM. See you then!
- Hello! Quick reminder – your appointment is scheduled for 2:00 PM, Jan 20. Looking forward to seeing you!
🛡️ Anti-Block Best Practices
- Always use variations — never send identical messages
- Include name when available — makes messages more personal
- Vary sentence structure — use nested constructs
- Mix up greetings and closings — rotate your phrases
- Test templates first — verify they make sense in all variations
- Keep it natural — don’t over-complicate
⚙️ Technical Notes
- Templates are processed in real-time as messages are sent
- Each recipient gets a unique version
<$NAME>gracefully handles missing data- Nested depth: recommended 2-3 levels maximum
- WhatsApp sees each message as unique human communication
🚀 Getting Started
- Create your base message template
- Identify words/phrases that can vary
- Wrap alternatives in
{option1|option2} - Use
[+ +item1|item2]for lists - Add
<$NAME>for personalization - Test with several generations
- Deploy with confidence!
