---
title: "How to Set Up Comment-to-DM on Instagram"
description: "Build one Instagram comment-to-DM flow: caption wording, keyword, public reply, the private message, delivery and tracking, with copy for three common uses."
url: "https://keepsposted.buildverse.dev/blog/comment-to-dm-instagram/"
image: "https://keepsposted.buildverse.dev/images/blog/comment-to-dm-instagram.webp"
published: "2026-11-12"
updated: "2026-11-12"
category: "Playbooks"
---

# How to Set Up Comment-to-DM on Instagram

*Playbooks · Published 2026-11-12 · Updated 2026-11-12 · 8 min read · KeepsPosted editorial team*

Build one Instagram comment-to-DM flow: caption wording, keyword, public reply, the private message, delivery and tracking, with copy for three common uses.

Picture a bakery (an example) posting its holiday order menu. Instead of 'link in bio', the caption says: comment MENU and we'll message you the order form. Each person who comments MENU gets one private message with the link. The bakery sees who asked, and the people who asked have the link in their messages when they are ready to order.

That is comment-to-DM. This playbook builds one flow from caption to measurement, with the limits Meta sets at each step and a copy pack for three uses: a menu or price list, a booking link and a discount code. Which automations to set up first, and in what order, is covered in [Instagram DM Automation: What to Set Up First](https://keepsposted.buildverse.dev/blog/instagram-dm-automation/).

## The limits your flow must fit

Comment-to-DM tools use Meta's 'private replies', a message sent in answer to a comment. Meta's developer documentation sets the boundaries, and every tool, including Meta's own, works inside them.

*Private replies on Instagram, from Meta's developer documentation (read 12 Nov 2026)*

| Rule | What it means for your flow |
| --- | --- |
| Within 7 days of the comment (for posts, ads posts and reels) | Older comments cannot get a private reply. Live comments only during the broadcast. |
| Only one message per comment | Your first message must carry everything: the answer, the link, the opt-out line. |
| The conversation continues only if the person replies, then within the 24-hour window | No follow-up 'did you get it?' unless they write back. The [24-hour window guide](https://keepsposted.buildverse.dev/blog/instagram-24-hour-messaging-window/) explains the clock. |
| Lands in the inbox if they follow you, otherwise in Requests | Non-followers may not see it. Tell them where to look. |
| Meta's examples show a plain text message | Type the link out in full. Do not count on buttons or images in the first message. |
| 750 private replies per hour per account for posts and reels | Only a concern for very large posts. Above that, sends are rate limited. |

For a free start, Meta Business Suite on desktop has a 'Comment to message' automation in its Inbox automations. Meta's set-up page describes it as replying to comments that contain specific keywords or phrases; its overview page says hashtags, so check what your screen offers.

## The annotated flow, step by step

1. **1. Caption disclosure**: Say exactly what happens before anyone comments: the keyword, what they will receive, and where it may land. For example: 'Comment MENU and we'll send you the order form by message. Not following us? Check your message requests.' If you also ask for a follow, say it is optional.
2. **2. Keyword choice**: One short word in capitals that people would not type by accident: MENU, BOOK, CODE. Avoid 'yes', 'love', 'want' and emojis. If your tool matches exactly (Meta Business Suite keywords are case-sensitive), add the variants: MENU, Menu, menu. Use a different keyword for each live post so you can tell results apart.
3. **3. Public reply (optional)**: A short public reply shows others the flow works and reminds non-followers to check Requests. Keep it off by default, or post it only after the message was sent, so you never announce a DM that failed. Vary the wording; a wall of identical replies looks like spam.
4. **4. Private reply copy**: This is your one message. Answer first, then the link, then what happens next and how to stop. Two to four short lines. Write it so it makes sense even if the person forgot which post they commented on.
5. **5. Optional follow request**: If you want followers, add one line after the link, such as 'Follow us for next week's specials.' Never hold back the link, code or price list until someone follows. Meta's spam rules list offering anything of monetary value in exchange for engagement, follows included, and a follow-gated discount is exactly that.
6. **6. Link delivery**: Deliver the promised thing in the first message. Use a full https:// link to a page that works on a phone, with the price, dates or booking slots visible. Add tracking parameters so you can count visits, for example ?utm_source=instagram&utm_medium=dm&utm_campaign=holiday-menu.
7. **7. Measurement fields**: Record the numbers in the template below for each post, a few days after it goes live and again when the campaign ends.

> **When the person replies:** A reply opens the standard 24-hour window, so you can answer questions, send a second link or hand the chat to a person. Replies to automated messages deserve a human answer; our [DM reply templates](https://keepsposted.buildverse.dev/blog/dm-reply-templates-for-local-businesses/) help you answer fast.

## Keyword choice in practice

The keyword decides who gets a message. Too broad and you message people who were only chatting; too odd and people misspell it. Our suggestions, with the reasoning:

*Keyword examples (editorial suggestions)*

| Keyword | Verdict | Why |
| --- | --- | --- |
| MENU, BOOK, CODE, PRICES | Good | Short, tied to what they receive, rarely typed by accident |
| XMASMENU, SPRING26 | Good for one campaign | Unique per post, so results are easy to separate. Harder to type, so show it in capitals in the caption and on the image |
| YES, ME, WANT, LOVE | Avoid | People type these in ordinary comments and would get a message they did not ask for |
| An emoji | Avoid | Emoji matching varies by tool, and many emojis come in variants, such as skin tones |
| LINK | Use with care | Clear, but if every post uses it you cannot tell which post drove a visit |
| A word in two languages | Check both | If your customers write in more than one language, add the other spelling as a variant |

Whatever you pick, put it in the first line of the caption and, if you can, on the image itself. People who only see the image in a feed still need to know what to type.

## Copy pack: three uses

Labelled examples for fictional businesses. Replace the brackets, keep the structure, and read each one aloud before you use it.

**Example 1: menu or price list (a bakery)**

- **Caption line:** Holiday orders are open until [date]. Comment MENU and we'll message you the full menu and order form. Not following us? Look in your message requests.
- **Keyword:** MENU (plus Menu, menu)
- **Public reply:** Sent, check your messages (or your requests).
- **Private reply:** Here's our holiday menu with prices and the order form: [https://link]. Orders close [date] at [time]. Questions? Just reply here. Reply STOP and we won't message you again.
- **Follow line (optional):** We post the week's bakes every Monday if you'd like to follow along.

**Example 2: booking link (a hair salon)**

- **Caption line:** New evening slots on Thursdays from [date]. Comment BOOK and we'll send you the booking link.
- **Keyword:** BOOK (plus Book, book)
- **Public reply:** Done, the link is in your messages.
- **Private reply:** Thanks for asking. You can book Thursday evening slots here: [https://link]. Prefer to talk to someone? Reply with your question and [name] will get back to you. Reply STOP to opt out.
- **Follow line (optional):** None. A booking flow works best kept short.

**Example 3: discount code (a gift shop)**

- **Caption line:** 10% off candles this weekend, in store and online. Comment CODE and we'll message it to you. Ends [day] at [time, time zone]. Terms: [one line or link].
- **Keyword:** CODE (plus Code, code)
- **Public reply:** Off by default for codes, to avoid a thread full of replies.
- **Private reply:** Here's your code: [CANDLE10]. It takes 10% off candles until [day] at [time]. Use it at [https://shop link] or show this message at the till. Reply STOP to opt out.
- **Follow line (optional):** None. Do not tie the code to following; see step 5.

> **Make the code measurable:** Use a code that exists only for this post, so redemptions tell you how the flow performed. State the end date and any limits in the caption as well as in the message.

## What to measure

Most tools report how many messages they sent. That alone tells you little. Track the whole path, from comment to outcome, so you can compare a comment-to-DM post with a plain 'link in bio' post.

**Comment-to-DM log (one line per post)**

Fill it a few days after posting and again at the end of the campaign.

- **Post and date:** for example, holiday menu carousel, Mon 16 Nov
- **Keyword:** MENU
- **Comments with the keyword:** 
- **Private replies sent:** 
- **Not sent, and why:** for example, comment older than 7 days, opted out, keyword misspelled
- **People who replied:** conversations opened
- **Link visits:** from your website analytics, filtered by the utm_campaign
- **Outcome:** orders, bookings or code redemptions
- **Opt-outs and complaints:** 

A large gap between keyword comments and messages sent is a set-up problem, not a content problem. Work through [Instagram Comment-to-DM Not Working? Check These](https://keepsposted.buildverse.dev/blog/instagram-comment-to-dm-not-working/) before you change the post.

## Test it before the post goes live

**Pre-launch checks**

- [ ] The account is a public professional account. Meta's webhook docs say comment notifications are not sent for private accounts.
- [ ] The automation is attached to the right post, or to your next post if your tool supports that.
- [ ] You commented the keyword from a second account that does not follow you, and found the message in Requests.
- [ ] You commented a near miss (lowercase, plural, with an emoji) to see what your tool matches.
- [ ] The link opens on a phone and the page shows what the caption promised.
- [ ] Only one automation listens to this post. Two tools on the same comments can send conflicting replies.
- [ ] Someone is assigned to answer replies within your stated hours.
- [ ] The end date is in the caption, and you know how to switch the automation off when it passes.

If you plan posts and their automations together, KeepsPosted lets you attach a comment-to-DM automation to a post, with an optional follow request and a STOP opt-out. The method above works the same in Meta Business Suite or any other tool. For promotions where people comment to enter a prize draw, the rules are different; read [Instagram Giveaway Rules: Plan It Before You Post](https://keepsposted.buildverse.dev/blog/instagram-giveaway-rules/) first.

## Frequently asked questions

### Can I send more than one message after someone comments?

Not straight away. Meta allows one private reply per comment. You can send more only after the person replies, within the 24-hour window that their reply opens.

### Why do people say they did not get the message?

If they do not follow you, Meta delivers the private reply to their message requests, which is easy to miss. Say so in the caption and in the public reply.

### Does comment-to-DM work on Reels and ads?

Meta's documentation lists comments on posts, ads posts and reels, within 7 days, and live comments during the broadcast. Meta notes that boosted or ads posts can produce duplicate notifications, so check your tool does not reply twice.

### Do I have to ask people to follow me?

No. A follow request is optional. Asking politely after the link is delivered is low risk; withholding the link, code or prize until someone follows carries policy risk under Meta's spam rules.

## Sources

- [Meta for Developers: Instagram private replies (7 days, one message, inbox or Requests, permissions)](https://developers.facebook.com/docs/messenger-platform/instagram/features/private-replies/) (checked 12 Nov 2026)
- [Meta for Developers: Rate limiting (Instagram private replies, 750 calls per hour per account)](https://developers.facebook.com/docs/graph-api/overview/rate-limiting/) (checked 12 Nov 2026)
- [Meta for Developers: Set up Instagram webhooks (public accounts only for comment notifications)](https://developers.facebook.com/documentation/instagram-platform/webhooks/setup) (checked 12 Nov 2026)
- [Meta for Developers: Messenger Platform policy overview (24-hour standard messaging window)](https://developers.facebook.com/docs/messenger-platform/policy/policy-overview/) (checked 12 Nov 2026)
- [Meta Business Help Centre: Set up Inbox automations in Meta Business Suite on desktop (Comment to message)](https://www.facebook.com/business/help/318238182723007) (checked 12 Nov 2026)
- [Meta Business Help Centre: About Inbox automations in Meta Business Suite (keyword matching, hashtags wording)](https://www.facebook.com/business/help/395965998733706) (checked 12 Nov 2026)
- [Meta Transparency Center: Spam (exchanging things of monetary value for engagement)](https://transparency.meta.com/policies/community-standards/spam/) (checked 12 Nov 2026)

## How this article was made

Written by the KeepsPosted editorial team from Meta's developer documentation and help pages listed, read on 12 November 2026, with AI assistance for drafting. The flow, copy pack and measurement log are our own suggestions; the businesses in the examples are fictional.

## Structured data

```json
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://keepsposted.buildverse.dev/blog/comment-to-dm-instagram/"
    },
    "headline": "How to Set Up Comment-to-DM on Instagram",
    "description": "Build one Instagram comment-to-DM flow: caption wording, keyword, public reply, the private message, delivery and tracking, with copy for three common uses.",
    "image": [
      "https://keepsposted.buildverse.dev/images/blog/comment-to-dm-instagram.webp"
    ],
    "datePublished": "2026-11-12",
    "dateModified": "2026-11-12",
    "articleSection": "Playbooks",
    "keywords": "Instagram, Comment to DM, DM automation, Messaging",
    "author": {
      "@type": "Organization",
      "name": "KeepsPosted",
      "url": "https://keepsposted.buildverse.dev"
    },
    "publisher": {
      "@type": "Organization",
      "@id": "https://keepsposted.buildverse.dev/#organization",
      "name": "KeepsPosted",
      "url": "https://keepsposted.buildverse.dev/",
      "logo": {
        "@type": "ImageObject",
        "url": "https://keepsposted.buildverse.dev/icon-512.png"
      },
      "parentOrganization": {
        "@type": "Organization",
        "name": "BuildVerse",
        "url": "https://buildverse.dev"
      }
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "BreadcrumbList",
    "itemListElement": [
      {
        "@type": "ListItem",
        "position": 1,
        "name": "Home",
        "item": "https://keepsposted.buildverse.dev/"
      },
      {
        "@type": "ListItem",
        "position": 2,
        "name": "Blog",
        "item": "https://keepsposted.buildverse.dev/blog/"
      },
      {
        "@type": "ListItem",
        "position": 3,
        "name": "How to Set Up Comment-to-DM on Instagram",
        "item": "https://keepsposted.buildverse.dev/blog/comment-to-dm-instagram/"
      }
    ]
  }
]
```
