> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chatsyncs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Keyword Replies

> Keyword Replies is ChatSyncs's flow builder for automating WhatsApp conversations, found under Chatbot Manager → Automation. Instead of one canned reply, you design a full customer journey on a visual canvas: a keyword trigger starts the flow, then connected blocks send messages, collect answers, save them, and route the conversation — all without writing code.

## Open the builder

<Frame caption="Chatbot Manager → Automation → Keyword Replies, showing the list of existing flows and the Create button.">
  <img src="https://mintcdn.com/chatsyncs/KBWIuAfBOnKg9V2U/images/learn/whatsapp-keyword-replies/step-00-navigate-to-keyword-replies.png?fit=max&auto=format&n=KBWIuAfBOnKg9V2U&q=85&s=f6def999e7c703e616f5ec2dfa1760a7" alt="ChatSyncs left navigation with Chatbot Manager selected, the Automation tab highlighted, and the Keyword Replies sub-tab highlighted, showing a list of existing flows" width="1259" height="536" data-path="images/learn/whatsapp-keyword-replies/step-00-navigate-to-keyword-replies.png" />
</Frame>

**Chatbot Manager → Automation → Keyword Replies** opens the list of existing flows. Click
**Create** on the Keyword Replies list to open a blank canvas.

<Frame caption="The Keyword Replies canvas with the Start Bot Flow block and the Flow blocks panel.">
  <img src="https://mintcdn.com/chatsyncs/ouLOR-saCHwHFKKf/images/learn/whatsapp-keyword-replies/step-02-bot-reply-canvas.png?fit=max&auto=format&n=ouLOR-saCHwHFKKf&q=85&s=b0a664c9e4192d5748a06dff5c93984f" alt="Keyword Replies canvas showing the Start Bot Flow block and the flow blocks sidebar" width="1280" height="547" data-path="images/learn/whatsapp-keyword-replies/step-02-bot-reply-canvas.png" />
</Frame>

The canvas opens with a **Start Bot Flow** block already on it, and a **Flow blocks** panel on
the left for dragging on messages, data-collection blocks, and interactive components.

## Configure the trigger

Double-click **Start Bot Flow** to open its configuration panel, then:

<Frame caption="The Configure Reference panel — set Trigger Keywords, choose a keyword matching type, and give the flow a Title.">
  <img src="https://mintcdn.com/chatsyncs/ouLOR-saCHwHFKKf/images/learn/whatsapp-keyword-replies/step-03-configure-reference.png?fit=max&auto=format&n=ouLOR-saCHwHFKKf&q=85&s=18c1369301ab1d3243047fa247192e93" alt="Configure Reference panel with Trigger Keywords, Keyword matching type, and Title fields" width="437" height="531" data-path="images/learn/whatsapp-keyword-replies/step-03-configure-reference.png" />
</Frame>

<Steps>
  <Step title="Set Trigger Keywords">
    Enter the words or phrases that should start this flow, e.g. `hi, hello, hey, start, help`.
    To pause the flow later without deleting it, just remove its trigger keywords here and save —
    with nothing to match, it stops firing but stays in your Keyword Replies list.
  </Step>

  <Step title="Choose a keyword matching type">
    **Exact keyword match** fires only on an exact word; **String match** also fires on
    similar/partial keywords.
  </Step>

  <Step title="Give the flow a Title">
    Use a clear, descriptive title such as `welcome_bot`, `support_bot`, or `lead_capture_bot` —
    this is how you'll find it later in the Keyword Replies list.
  </Step>

  <Step title="Save">
    Click **Save Changes** to apply the configuration.
  </Step>
</Steps>

<Tip>
  Pick keywords your customers actually type. A flow titled `welcome_bot` triggered on
  `hi, hello, hey, start, help` will catch most incoming first messages.
</Tip>

## Automation Actions

The same configuration panel has an **Automation Actions** section for managing the contact
without sending a visible message:

<Frame caption="The Automation Actions section — add/remove labels, unsubscribe from a sequence, and assign the conversation to a team or team member.">
  <img src="https://mintcdn.com/chatsyncs/ouLOR-saCHwHFKKf/images/learn/whatsapp-keyword-replies/step-04-automation-actions.png?fit=max&auto=format&n=ouLOR-saCHwHFKKf&q=85&s=882c3815f69a9963763e843af4796ffa" alt="Automation Actions panel with Add Label, Remove Label, Unsubscribe from Sequence, and conversation assignment fields" width="413" height="520" data-path="images/learn/whatsapp-keyword-replies/step-04-automation-actions.png" />
</Frame>

* **Add / Remove Label(s)** — tag contacts by demographic, interest, lead status, or purchase
  history so you can target them later with segmented campaigns. Labels themselves are created
  in [Subscriber Manager](/learn/whatsapp-subscriber-manager#create-a-label) — this just
  applies an existing one automatically when the flow runs.
* **Unsubscribe from Sequence** — stop an automated message sequence (onboarding, lead
  nurturing, promotions, re-engagement) for this contact.
* **Assign Conversation to a group** — hand the conversation to a team (e.g. Sales, Support,
  Executive) so any member of that team can pick it up.
* **Assign conversation to a user** — hand the conversation to one specific team member.

## Data & Integrations

The **Data & Integrations** section collects what the bot learns from the conversation and
sends it where you need it:

<Frame caption="The Data & Integrations section — save responses to a custom field, forward them to a webhook, or sync them to Google Sheets.">
  <img src="https://mintcdn.com/chatsyncs/ouLOR-saCHwHFKKf/images/learn/whatsapp-keyword-replies/step-05-data-integrations.png?fit=max&auto=format&n=ouLOR-saCHwHFKKf&q=85&s=3f046aabaf002f4a78ca7a7aafac0248" alt="Data & Integrations panel with Save to Custom Field, Forward Data to Webhook, and Sync Data to Google Sheets fields" width="405" height="346" data-path="images/learn/whatsapp-keyword-replies/step-05-data-integrations.png" />
</Frame>

* **Save to Custom Field** — store a user's reply (name, email, phone, etc.) in a custom field
  you've created under Custom Fields.
* **Forward Data to Webhook** — POST the collected fields to an external URL (a CRM, database,
  or custom app) as JSON, e.g. `{"name": "{{user_name}}", "email": "{{user_email}}"}`.
* **Sync Data to Google Sheets** — connect a Google account, pick a spreadsheet and worksheet,
  and map each custom field to a column; every new submission adds a row automatically.

**Example — a lead-capture flow:**

<Steps>
  <Step title="User sends 'Hi'">The trigger keyword starts the flow.</Step>
  <Step title="Bot asks for Name, Email, and Phone">Each answer is captured as it arrives.</Step>
  <Step title="Responses save to custom fields">e.g. `user_name`, `user_email`, `user_phone`.</Step>
  <Step title="Data forwards to a webhook">For CRM processing.</Step>
  <Step title="Data syncs to Google Sheets">For reporting and tracking — no manual entry.</Step>
</Steps>

## Add flow components

<Frame caption="Flow blocks available to drag onto the canvas, connected to the Start Bot Flow block.">
  <img src="https://mintcdn.com/chatsyncs/ouLOR-saCHwHFKKf/images/learn/whatsapp-keyword-replies/step-06-flow-blocks-panel.png?fit=max&auto=format&n=ouLOR-saCHwHFKKf&q=85&s=87c811aa4ae75bf4f0ccb9b89634f337" alt="Flow blocks panel listing Messages, Data Collection, and Interactive components connected to Start Bot Flow" width="1270" height="544" data-path="images/learn/whatsapp-keyword-replies/step-06-flow-blocks-panel.png" />
</Frame>

After saving Start Bot Flow, hover the block and drag its connector dot onto the canvas to open
the list of components you can chain after it.

| Component                   | What it does                                                                                |
| --------------------------- | ------------------------------------------------------------------------------------------- |
| **Text Message**            | Plain text — welcomes, instructions, FAQs, notifications.                                   |
| **Image Message**           | JPG/JPEG/PNG, up to 5 MB — product images, banners, promos.                                 |
| **Video Message**           | MP4/3GP, up to 16 MB — demos, tutorials, marketing.                                         |
| **Audio Message**           | AAC/MP3/AMR/OGG, up to 16 MB — voice greetings, announcements.                              |
| **File / Document Message** | PDF/DOC/DOCX/XLS/XLSX/PPT/PPTX/TXT, up to 100 MB — brochures, invoices, manuals.            |
| **Reply Buttons**           | Up to 3 tappable buttons for a quick predefined response.                                   |
| **List Messages**           | Up to 10 options in a structured list.                                                      |
| **CTA URL Button**          | A button that opens a website — landing, payment, or booking pages.                         |
| **Location Message**        | Share a map location — office, store, or event venue.                                       |
| **Random Number Generator** | Generates a number in a range — token numbers, ticket IDs, lead references.                 |
| **Label Assign**            | Auto-assigns a label to the contact for segmentation.                                       |
| **WhatsApp Flow**           | Launches a Meta WhatsApp Flow — lead forms, bookings, surveys, registration.                |
| **User Input Flow**         | Captures free-text input (name, email, phone, address) into custom fields.                  |
| **AI Reply**                | AI-generated answers for FAQs, support, product questions, knowledge-base lookups.          |
| **Condition**               | Branches the flow based on a value, e.g. `If User Interest = Sales → Sales Flow`.           |
| **Template Messages**       | Sends an approved WhatsApp template — order updates, reminders, payment notices, campaigns. |

<Warning>
  Template Messages must be **approved by Meta** before a flow can send them — see
  [Template structure & sending](/meta-api/templates/template-structure-and-sending).
</Warning>

A typical flow chains several of these:

```
Start Bot Flow
→ Welcome Text
→ Interactive Buttons
→ User Input Collection
→ Save to Custom Fields
→ AI Reply or Condition Routing
→ Webhook / Google Sheet Sync
→ Template Message Follow-Up
```

## Personalize messages

<Frame caption="Personalizing a message body with custom-field variables and adding optional footer text.">
  <img src="https://mintcdn.com/chatsyncs/ouLOR-saCHwHFKKf/images/learn/whatsapp-keyword-replies/step-07-personalize-message.png?fit=max&auto=format&n=ouLOR-saCHwHFKKf&q=85&s=14966320a03bcc7019b7919c8e16f3ff" alt="Message Body with custom-field variables and an optional Message Footer field" width="376" height="350" data-path="images/learn/whatsapp-keyword-replies/step-07-personalize-message.png" />
</Frame>

Inside a Text Message block, click **Name** to insert the user's name, or type `#` to insert any
custom field as a variable — e.g. `Hey #LEAD_USER_FIRST_NAME#, welcome back!`. You can also add
optional **Message Footer** text, commonly used for branding or disclaimers (e.g.
`Powered by ChatSyncs`).

## Delivery options

Each message block has **Delivery Options** for a more natural pacing:

<Frame caption="Delivery Options — a Smart Delay and a typing indicator toggle before the reply is sent.">
  <img src="https://mintcdn.com/chatsyncs/ouLOR-saCHwHFKKf/images/learn/whatsapp-keyword-replies/step-08-delivery-options.png?fit=max&auto=format&n=ouLOR-saCHwHFKKf&q=85&s=3fad994d4f93e327699460271f08f300" alt="Configure Text Message panel showing Smart Delay in Reply and Typing on display options" width="417" height="531" data-path="images/learn/whatsapp-keyword-replies/step-08-delivery-options.png" />
</Frame>

* **Smart Delay in Reply** — wait a set number of hours/minutes/seconds before sending.
* **Typing on display** — show WhatsApp's typing indicator before the reply lands.

<Tip>
  A 1–3 second typing delay before a reply makes the bot feel more human without slowing the
  conversation down.
</Tip>

## Clone or delete a component

<Frame caption="Hovering a flow block reveals the clone (duplicate) and delete icons used to copy or remove it.">
  <img src="https://mintcdn.com/chatsyncs/ouLOR-saCHwHFKKf/images/learn/whatsapp-keyword-replies/step-09-clone-delete-icons.png?fit=max&auto=format&n=ouLOR-saCHwHFKKf&q=85&s=4ea8a54f5f9c27fc8820e26ebf2aee81" alt="A flow block with clone and delete icons visible on hover" width="1279" height="537" data-path="images/learn/whatsapp-keyword-replies/step-09-clone-delete-icons.png" />
</Frame>

Hover any block on the canvas to reveal two small icons above it: the first **clones** the
block (handy for reusing a configured component without rebuilding it), the second **deletes**
it permanently.

<Tip>
  Clone a block before making a major change to it — that keeps a backup copy on the canvas in
  case you want to revert.
</Tip>

## Save & validation

<Frame caption="The validation warning shown when a connected component is missing required data.">
  <img src="https://mintcdn.com/chatsyncs/ouLOR-saCHwHFKKf/images/learn/whatsapp-keyword-replies/step-10-validation-warning.png?fit=max&auto=format&n=ouLOR-saCHwHFKKf&q=85&s=ffbab31a2e6fe73c31d0f4d903d36bfe" alt="Warning dialog: Some component(s) have no data" width="1264" height="536" data-path="images/learn/whatsapp-keyword-replies/step-10-validation-warning.png" />
</Frame>

Before saving, every required field on every connected component must be filled in — a missing
**button text** on an Interactive Message, or empty content on a Text Message, blocks the save
and shows a validation warning.

<Frame caption="A saved flow, with the success confirmation after clicking Save.">
  <img src="https://mintcdn.com/chatsyncs/ouLOR-saCHwHFKKf/images/learn/whatsapp-keyword-replies/step-11-save-flow-success.png?fit=max&auto=format&n=ouLOR-saCHwHFKKf&q=85&s=68acb3d78aea92bc2e1a3445e1e935c5" alt="Start Bot Flow connected to a Text reply with a Data has been saved successfully toast" width="1259" height="546" data-path="images/learn/whatsapp-keyword-replies/step-11-save-flow-success.png" />
</Frame>

Once every component is complete, click **Save** — a success confirmation appears and the flow
is live.

## Manage your flows

Back on the Keyword Replies list, each flow has its own row of action icons:

<Frame caption="The action icons on a Keyword Replies list row — duplicate, copy to another bot, export, edit, delete, and move to folder.">
  <img src="https://mintcdn.com/chatsyncs/KBWIuAfBOnKg9V2U/images/learn/whatsapp-keyword-replies/step-12-list-action-icons.png?fit=max&auto=format&n=KBWIuAfBOnKg9V2U&q=85&s=86b1e3bc1d4608f5db2ded1732e9727b" alt="Keyword Replies list row with six action icons highlighted: duplicate, copy to other bot, export flow data, edit, delete, and move to folder" width="1275" height="532" data-path="images/learn/whatsapp-keyword-replies/step-12-list-action-icons.png" />
</Frame>

| Action                | What it does                                                                       |
| --------------------- | ---------------------------------------------------------------------------------- |
| **Duplicate**         | Creates a copy of the flow — useful for reusing it with minor modifications.       |
| **Copy to Other Bot** | Copies the flow to another bot in your account, instead of rebuilding it manually. |
| **Export Flow Data**  | Exports the complete flow configuration for backup, migration, or sharing.         |
| **Edit**              | Opens the flow editor to modify the existing flow and its components.              |
| **Delete**            | Permanently removes the flow.                                                      |
| **Move to Folder**    | Moves the flow into a folder to help organize multiple flows.                      |

## Frequently asked

<AccordionGroup>
  <Accordion title="How do I make my bot reply to a customer's first message automatically?">
    Create a Keyword Reply, set Trigger Keywords on the Start Bot Flow block (e.g.
    `hi, hello, hey, start`), and connect a Text Message or Interactive Message block after it.
    Save the flow — it fires whenever a customer's message matches a trigger keyword.
  </Accordion>

  <Accordion title="Can I collect a customer's name, email, and phone number through the bot?">
    Yes — use **User Input Flow** blocks to ask for each value, and map each answer to a
    Custom Field under Data & Integrations. You can then forward the data to a webhook or sync
    it to Google Sheets automatically.
  </Accordion>

  <Accordion title="Why won't my flow save?">
    A connected component is missing required data — e.g. an Interactive Message with no
    button text, or an empty Text Message. ChatSyncs shows a validation warning naming the
    incomplete component; fill it in and save again.
  </Accordion>

  <Accordion title="What's the difference between Exact keyword match and String match?">
    **Exact keyword match** fires only when the customer's message is exactly one of your
    trigger keywords. **String match** also fires if a trigger keyword appears anywhere inside
    a longer message. If your bot isn't firing on messages you expected, check which matching
    type the Start Bot Flow block is set to — Exact match is stricter and will miss typos or
    extra words.
  </Accordion>

  <Accordion title="What if I want to pause a Keyword Replies flow but not delete it?">
    Open **Start Bot Flow → Configure Reference**, remove its Trigger Keywords, and save. With
    no keywords left to match, the flow stops firing for any customer message, but it stays in
    your Keyword Replies list — add the keywords back any time to turn it on again.
  </Accordion>
</AccordionGroup>
