GhalaGhalaHelp Center
Back to ghala.ioghala.ioSign in
  • Getting Started
    • Ghala Documentation
    • Send Your First WhatsApp Message via API
    • Setting Up WhatsApp Webhooks
  • Commerce
    • Start Selling on WhatsApp
    • Set Up the AI Sales Agent
    • Get Paid with Snippe
  • Ai Automation
    • Configuring AI Auto-Reply for WhatsApp
    • Setting Up Human Handover Protocol
  • Campaigns Messaging
    • WhatsApp Message Templates: Complete Guide
    • Bulk WhatsApp Messaging: Complete Campaign Guide
  • Contacts Crm
    • WhatsApp Contact Management Guide
  • Best Practices
    • WhatsApp Customer Support Best Practices
    • Message Template Best Practices
  • Api Reference
    • Ghala API Reference

Products

  • Ghala
  • Sarufi
  • Snippe
  • Sema

Explore

  • Use Cases
  • Pricing
  • Blog

Developers

  • Docs
  • API Reference
  • API Quickstart
  • Webhooks Guide

Contact

  • SkyCity Mall, 9th Floor, Dar es Salaam, Tanzania
  • info@ghala.io
  • +255 699 920 009
© 2026 Neurotech Company LimitedTerms of ServicePrivacy PolicySitemap
  1. Help Center
  2. Campaigns Messaging
  3. WhatsApp Message Templates: Complete Guide

WhatsApp Message Templates: Complete Guide

Master WhatsApp message templates. Learn what gets approved, common rejection reasons, and best practices.

WhatsApp lets you reply freely to any customer for 24 hours after their last message. Outside that window, and for any campaign you start, you must use a message template: a pre-written message that Meta has reviewed and approved. This guide covers creating templates in Ghala and getting them approved on the first try.

When You Need a Template

Situation Template needed?
Replying within 24h of the customer's last message No — free-form messages
Following up after the 24h window closed Yes
Bulk campaigns and broadcasts Yes
Order updates initiated by you Yes

Template Anatomy

A template has up to four parts:

  • Header (optional) — a short title, image, or document
  • Body — the message itself, with {{1}}-style variables for personalization
  • Footer (optional) — a muted line at the bottom, e.g. "Reply STOP to opt out"
  • Buttons (optional) — quick replies or links the customer can tap

Variables are numbered placeholders filled in at send time: "Hi {{1}}, your order {{2}} has shipped" becomes "Hi Amina, your order #1042 has shipped."

Template Categories

Meta reviews every template under a category, and pricing differs per category, so pick honestly:

  • Marketing — promotions, offers, product announcements, win-backs
  • Utility — order confirmations, delivery updates, appointment reminders; messages triggered by something the customer did

A promotional message submitted as Utility is a near-guaranteed rejection. When a message mixes both, it's Marketing.

Creating a Template in Ghala

  1. Go to Templates in your dashboard and click New template
  2. Name it in lowercase with underscores: order_shipped, august_sale
  3. Pick the category and language
  4. Write the header, body, footer, and buttons; the live preview shows the message as customers will see it
  5. Submit — Ghala sends it to Meta for review

Review usually takes minutes to a few hours. The Templates page tracks each template's status (pending, approved, or rejected), and only approved templates can be used in campaigns.

Why Templates Get Rejected

The most common rejection reasons, and the fix:

Rejection reason Fix
Wrong category Promotional content must be Marketing, not Utility
Vague variables {{1}} with no context confuses reviewers; make the surrounding text explain it
Floating variables Don't start or end the message with a bare variable
Policy content No prohibited goods, misleading claims, or requests for sensitive data
Formatting issues Broken variable numbering ({{1}}, {{3}} with no {{2}}), excessive caps or emoji

A rejected template can be edited and resubmitted; you don't lose the slot.

Best Practices

  • Write the sample content as a real message, not lorem ipsum; reviewers approve faster when intent is obvious
  • Keep one template per job: order_confirmed, order_shipped, order_delivered beat one do-everything template
  • Add an opt-out line to marketing templates; it protects your quality rating
  • Test an approved template on your own number before sending it to thousands

For deeper guidance on wording that converts without hurting your quality rating, see Message Template Best Practices.

What's Next

  • Use your approved templates at scale: Bulk WhatsApp Messaging
PreviousSetting Up Human Handover ProtocolNextBulk WhatsApp Messaging: Complete Campaign Guide

On this page

  • When You Need a Template
  • Template Anatomy
  • Template Categories
  • Creating a Template in Ghala
  • Why Templates Get Rejected
  • Best Practices
  • What's Next