Glossary
Comment-to-DM automation glossary
Twenty-nine terms, defined in one sentence each, for anyone reading about how Instagram automation actually works under the hood.
Last updated
24-hour messaging window
Meta calls it the 24-hour messaging window: the rule that a business account can only message someone within 24 hours of that person's last message to it, unless a specific exception applies.
Instagram carves out one exception that matters here: a private reply sent to a public comment gets 7 days instead of 24 hours, because the comment itself starts the clock, not a prior DM. A story reply doesn't get that exception. It arrives as a direct message from the first tap, so it's bound by the plain 24-hour rule, which is also how long the story itself survives on the platform.
ReplyMagnet's queued DMs inherit whichever window applies: a reply parked behind a full quota can wait up to 7 days for a feed comment, or 24 hours for a story reply, before it expires unsent. Miss it and there's no workaround, not even a manual message from the inbox. The recipient has to comment or message again to reopen the clock.
Business or Creator account
Only a Business or Creator account unlocks Instagram's Graph API, which is why a comment-to-DM tool can't connect to a personal profile.
ReplyMagnet's connect flow checks account type the moment someone links Instagram: a personal account gets a plain explanation and a link to switch, not a cryptic API error. A personal account can post, comment, and reply like anyone else, but it has no read access to comments at scale and no permission to send a message on a business's behalf.
Switching takes about two minutes in the Instagram app, under Settings, then Account type, and it's free. It doesn't change how a profile looks to followers. It adds Insights, contact buttons, and category labels, nothing more, nothing taken away.
capture page
A delivered link opens to a capture page, a short landing page where the file sits behind an optional prompt for an email address or phone number before the download starts.
The page stays small on purpose: a headline naming the file, one or two fields if the campaign has a gate switched on, and a download button. Nothing about it resembles a full marketing funnel, because its only job is handing over the thing the person already asked for.
A campaign can gate on email, on phone, on both, or on neither. With no gate at all, the visitor lands and downloads in one step. With a gate on, the file stays hidden until the field is filled: a phone number that passes a basic international-format check, or a real email address, whichever the campaign asks for.
Every visit and every field filled in becomes a conversion event, which feeds the analytics tab and, on Pro and Agency, an ESP sync.
Branding on the page itself depends on plan. Starter and Basic show a small "Delivered by ReplyMagnet" line; Pro and Agency can turn it off and make the page look entirely like the creator's own.
conversion event
Every meaningful moment in a lead's journey (a comment matched, a reply sent, a DM delivered, an email captured, a follow confirmed) gets written down as one timestamped conversion event.
Nothing in the dashboard is a live count. Every chart, every KPI tile, every campaign's stats line is an aggregate computed by grouping these rows after the fact, which keeps the numbers auditable: a disputed count traces back to the exact events that produced it.
Events are append-only, so a correction never edits or deletes an old row. It adds a new one instead, and a single comment typically produces two or three of these on its way through the pipeline: a match, a reply, and a delivery, plus an email-captured or follow-confirmed event if the lead went further.
engagement (as ReplyMagnet bills it)
ReplyMagnet counts one engagement for every reply or DM actually sent to a commenter, tallied once per comment no matter how many campaigns or retries touched it.
Plans are priced on this single number rather than on connected accounts or stored contacts, because it's the one figure that tracks real cost: Starter includes 1,000 a month for free, Basic adds room for 5,000 at $9, Pro covers 25,000 at $29, and Agency scales to 100,000 at $79.
Billing on sent engagements instead of stored contacts means a post going unexpectedly viral doesn't produce a shock invoice for leads that were never delivered anything. Comments past a plan's monthly allowance queue instead of failing outright, and they send as soon as the next billing cycle opens or the plan is upgraded.
A retry after a transient Meta error doesn't double-count, either. The pipeline checks which step already landed, public reply or DM, before resuming, so a network blip never bills the same comment twice.
ESP sync
ESP sync is the automatic push of a captured lead's email into an email service provider such as Mailchimp or Kit, tagged with the campaign it came from.
The sync fires the moment an email is captured on the download page, not on a batch schedule, so a new subscriber shows up in the real list within seconds rather than at the end of the day. A settings-page button also lets a workspace backfill leads that were captured before a provider was connected.
Each contact carries a source tag and a campaign tag, so a list built this way can be filtered or automated inside the ESP without any manual tagging. A bad API key or a dropped connection auto-disables the sync after repeated failures rather than silently losing leads forever.
This one sits a tier above CSV export, not next to it. Starter shows leads in-app for the last 30 days only, with no export. Basic adds full lead history and a CSV, so a workspace already owns its list without paying for sync. The live push into a mailing list is Pro and Agency.
follow gate
Before delivering the file, a follow gate can check whether the commenter already follows the account, and on Instagram that check is verified through the API rather than taken on trust.
The verification comes from Meta's own is_user_follow_business signal: a real yes-or-no answer, not a screenshot someone could fake.
If the check comes back false, the commenter sees a short prompt: follow, then tap confirm, before the DM continues.
Meta's Spam policy restricts requiring a follow purely as the price of accessing content, which is why ReplyMagnet's own Meta App Review demo ran with the gate switched off. Turning it on for a live campaign is a creator's own choice, not something ReplyMagnet pushes.
Someone who's already following skips the extra step entirely. The check runs before asking, so an existing follower gets the file straight away instead of being asked to prove something that's already true.
Instagram Graph API
Reading comments and sending messages on a connected Business or Creator account both run through the Instagram Graph API, Meta's official interface and the only sanctioned way a third-party tool can automate either.
Access isn't automatic. An app has to go through Meta's App Review process and be granted specific permissions before it can touch a real account's data in production, and reviewers watch a live demonstration of the exact flow the app will run. Every account owner also grants access explicitly through Meta's OAuth screen, the same consent flow used to log into any third-party app with Facebook or Instagram.
The alternative, driving the Instagram app itself through a browser or a device automation script, isn't a lighter version of the same thing. It's a ban risk for the account it runs on, because it looks to Meta's systems exactly like the behaviour those systems are built to catch.
lead magnet
In exchange for a comment, an email address, or both, a lead magnet is the free file, checklist, template, or resource a business hands over.
In ReplyMagnet a lead magnet is just a file attached to a campaign, most often a PDF, capped at 25 MB regardless of plan. The same file can be reused across several campaigns with different trigger keywords if it answers more than one common question.
A good one answers a single, specific question a follower already has, rather than trying to summarise an entire offer. A five-page checklist someone actually opens beats a forty-page guide that sits unread, because the whole point is the moment of "yes, this is exactly what I asked for."
The magnet is the reason the reply gets opened. A trigger keyword with nothing useful behind it trains people to stop commenting it.
opt-in
Nothing sends until the commenter opts in by typing the trigger keyword themselves, which is what makes the DM that follows a response rather than a message they never asked for.
The keyword comment is the opt-in, and it's what a comment-to-DM tool is actually built around: reply to a request, don't invent one. That's a meaningfully different category from a cold list-building tool that messages accounts which never engaged at all.
A capture page's email or phone field is a second, separate opt-in layered on top of the first. Someone can decline it and still get the file, since the original comment already earned the delivery. Getting this distinction right matters beyond user experience, too: platform policy and payment-processor rules both treat solicited, one-to-one replies very differently from messaging sent to people who never asked.
story reply trigger
A story reply trigger fires when someone replies to an Instagram Story instead of commenting on a feed post, and because that reply already opens a direct message thread, there's no public reply step, only the DM.
A story reply arrives through Instagram's messaging API rather than the comments API, since a reply to a story is structurally a private message from the first tap. That single difference is why the pipeline skips the public-reply half of the usual sequence for this trigger type.
Story campaigns are scoped to the whole account rather than to one specific post, because a story disappears after 24 hours and there's no fixed media ID worth watching for the length of a normal campaign.
The reply carries the standard 24-hour messaging window, not the 7-day window a feed comment gets, since it's a message-first interaction rather than a comment-first one.
trigger keyword
A commenter has to type the exact trigger keyword, something like GUIDE or PRICE, before an automation replies and sends them the linked file.
Matching is case-insensitive and checks for the whole word, so a comment reading "just wanted the guide, thanks!" matches a GUIDE keyword while a comment about a "guideline" doesn't accidentally trigger it. A "smart" match mode exists too, for a request phrased without the exact word at all.
One keyword usually maps to one campaign, and ReplyMagnet resolves conflicts deterministically when two live campaigns could technically match the same comment, rather than firing both or picking at random.
Short, memorable, and easy to type on a phone works best. A keyword nobody can spell correctly is a keyword nobody's automation will ever see.
webhook
The instant a comment or message happens, Meta fires an HTTP request called a webhook at the business's own server, which is how a comment-to-DM tool learns about new activity within seconds instead of polling for it.
Every incoming webhook is signature-verified before anything else happens: a header Meta computes with a shared secret, checked against what the server computes itself. A request that claims to be Meta but was actually forged by someone else gets rejected before its payload is even read.
From there the event is written to a durable job queue rather than handled inline.
That's what lets a sudden burst of comments on a viral post get processed steadily instead of overwhelming the server or dropping events that arrive faster than they can be answered.
Meta also redelivers a webhook it thinks might have failed, so the queue dedupes on a stable key before acting. A comment gets replied to once, not once per redelivery.
Instagram comment auto-reply
An Instagram comment auto-reply is the automatic public reply an automation posts under a matching comment, so the thread reads as answered before the direct message with the file goes out.
The reply and the direct message are two separate steps, not one thing. ReplyMagnet posts the public reply first, so anyone scrolling the comments sees the request was handled, then opens a direct message carrying the actual link or file. Only the second step delivers anything; the first exists to make the thread look answered. The reasoning behind that visible half, and its honest read on social proof, is covered under public reply.
Because it fires the moment a matching comment lands, an auto-reply reaches the commenter within seconds rather than whenever the account owner next opens the app. It's one half of comment-to-DM automation, triggered by a trigger keyword a real person typed first.
Each reply posts once per comment. A retry after a transient error resumes whichever step is still missing instead of stacking a duplicate reply on the thread.
public reply
A public reply is the visible comment ReplyMagnet posts back under a triggering comment, distinct from the private message that carries the file; a feed-comment delivery logs it as one of two recorded steps, but a story-reply delivery skips it and sends only the DM.
A direct message is invisible to everyone but its recipient, so a delivery that was only a DM would leave the comment thread looking ignored. The public reply is what other people scrolling the post actually see: a sign that the account answers the people who ask, which is the honest version of social proof.
Posting it is logged as its own conversion event, separate from the DM that follows, so a creator can tell whether a given comment got its reply, its message, or both. The full reply-then-DM sequencing is walked through under auto-reply.
One trigger type skips this step. A story reply already arrives inside a direct message thread, so there's no public comment to answer and only the DM is sent.
per-contact pricing
Per-contact pricing is a billing model that charges for every unique person a tool interacts with during a period, so cost accrues per human reached rather than per message sent.
Under this model, a single billing period counts each distinct person once no matter how many messages passed between them and the account. A post that unexpectedly draws thousands of new commenters raises the bill because it raises the count of unique people touched, regardless of how many of them ever received anything useful.
ManyChat is the widely used example: its plans scale on what it calls "Active Contacts," which it defines as a real person you interact with during a monthly billing period, and going over a plan's contact allowance is billed per extra contact rather than blocked.
ReplyMagnet deliberately does not price this way. It bills per engagement actually sent, which is a different unit entirely, described under per-engagement pricing.
per-engagement pricing
Per-engagement pricing bills for each reply or direct message actually sent, counted once per comment, rather than for every unique person an account interacts with.
This is the model ReplyMagnet uses. Plans are priced on the count of engagements sent in a month: Starter includes 1,000 for free, Basic covers 5,000 at $9, Pro reaches 25,000 at $29, and Agency scales to 100,000 at $79.
The practical difference from per-contact pricing shows up when a post goes viral. Comments past a plan's monthly allowance queue in the overflow queue instead of failing or quietly running up an overage, so a spike in attention doesn't turn into a surprise invoice for people who were never sent anything.
A retry after a transient Meta error doesn't double-count either. The pipeline checks which step already landed, public reply or DM, before resuming, so one network blip never bills the same comment twice.
overflow queue
The overflow queue is where comments past a plan's monthly engagement allowance wait and then send automatically once quota frees up, on every plan and never billed as an extra.
When a plan's monthly allowance is used up, a matching comment isn't dropped. It parks as a queued message rather than failing outright, so a viral moment past quota still leaves a record of everyone who asked instead of losing them.
Parked messages release on their own, oldest first, the moment headroom returns: either when the next billing cycle opens the allowance again or when the plan is upgraded to a larger one. Nothing about this is a paid add-on; the queue is part of every plan, Starter included.
The one way a parked message doesn't send is expiry. If it waits longer than the messaging window the platform allows, 7 days for a feed comment or 24 hours for a story or live comment, the send is no longer permitted and the queued item lapses.
email gate
An email gate is an optional prompt on the capture page that asks for an email address before the file downloads, turning a delivered link into a captured lead.
With the gate switched on, a delivered link opens the capture page and holds the file behind a single field until a real email address is entered. Switched off, the visitor lands and downloads in one step, since the original comment already earned the delivery.
Every plan can use it, from Starter up. The email is a second, separate opt-in layered on the first: the commenter already asked for the file by commenting, and the gate asks whether they'll also leave an address in exchange for it.
A captured email is written as a conversion event that feeds the analytics view, and on Pro and Agency it also triggers an ESP sync that pushes the address straight into Mailchimp or Kit.
phone gate
A phone gate is an optional capture-page prompt for a mobile number, available on Pro and Agency, that checks the entry against a basic international format before releasing the file.
It behaves like the email gate, holding the file behind a field on the capture page, except the field asks for a phone number. A campaign can run it on its own or alongside the email gate, so a visitor is asked for one, both, or neither depending on how the campaign is set up.
Validation is deliberately light. The entry is stripped of spaces and separators and checked against a basic international shape, without inventing a country code for a number that arrived without one, so a plainly malformed number is rejected while genuine formats from any country pass.
It fits a creator whose follow-up is phone-first, where a mobile number is worth more than an email because the next touch is a call or a text they send themselves. The phone gate is a Pro and Agency feature.
smart trigger
A smart trigger uses an AI classifier to deliver when a comment clearly reads as a genuine request, even when it never contains the exact keyword.
A plain trigger keyword only fires on the literal word. A smart trigger covers the comments that ask for the thing without using it, like "how do I get this?" under a post whose freebie is obvious from context, where a keyword match would miss entirely.
It runs only on a keyword miss, so an exact keyword still takes the fast path and never spends a classification. Every plan includes smart matching, capped per day to keep costs predictable: 100 classifications on Starter, 300 on Basic, 750 on Pro, and 2,000 on Agency. The classifier fails closed, meaning an unclear comment or an error results in no delivery rather than a wrong one.
The value is catching real intent that doesn't happen to be phrased as instructed, since people rarely comment the exact word a creator had in mind.
any-comment mode
Any-comment mode is a match setting that delivers on every in-scope comment under a post, with no trigger keyword required.
Most campaigns wait for a specific word. Any-comment mode drops that requirement: arm it on a post and every comment that lands in scope gets the reply and the DM, which suits a creator who tells followers to "comment anything" for the freebie rather than a particular keyword.
There is one caveat worth knowing. Because ReplyMagnet resolves overlapping campaigns oldest-first, an older any-comment campaign sharing a post with a trigger keyword campaign can swallow the comments the keyword campaign was meant to catch, since it matches everything before the keyword one is ever reached. The clean way around it is to scope an any-comment campaign to its own posts rather than pointing both at the same one.
It sits at the opposite end from an exact keyword: where a keyword is the tightest possible match and a smart trigger reads intent, any-comment matches with no condition at all. That makes it the simplest to explain to an audience and the easiest to over-fire, so it earns its place on a post whose comments are overwhelmingly people asking for the one thing on offer.
tracked download link
A tracked download link is the per-lead URL ReplyMagnet delivers in its DM, which streams the file through ReplyMagnet's own domain and records each click as a conversion event.
Every delivery carries its own link with a unique token on the end, so a click traces back to exactly one lead and one campaign rather than to an anonymous crowd hitting a shared file.
The file is served through ReplyMagnet's own domain rather than handed off to a raw storage URL. The bytes stream out under the same address the link points at, which keeps the delivery on a trusted host and lets the click be counted on the way through.
That count is written as a conversion event, the same append-only record every other step in the pipeline produces, so the analytics tab can show how many delivered links were actually opened rather than only how many were sent.
A tracked download link is not the same thing as the capture page. When a campaign has a gate switched on, the link opens the capture page first and the file waits behind an email or phone field; with no gate, the link streams the file straight down. Either way it is one link per lead, and either way the open is logged.
white-label capture page
A white-label capture page is a Pro and Agency option that removes the "Delivered by ReplyMagnet" line so the page reads entirely as the creator's own.
By default the capture page carries a small "Delivered by ReplyMagnet" line at the foot, the quiet attribution every delivered link shows on Starter and Basic. Switching to white-label drops that line, leaving a page that names the file, asks for whatever the gate requires, and hands over the download with no third-party mark anywhere on it.
The option is a Pro and Agency feature, and it changes the page's appearance only. The same tracking, the same gates, and the same conversion events run underneath, so a creator handling client work can deliver on a page that looks like part of their own site without giving up any of the reporting.
CSV export
CSV export is the downloadable leads file available from the Basic plan up, written RFC-4180-safe with ISO timestamps so it opens cleanly in any spreadsheet.
The export writes one row per lead with every field quoted to the RFC-4180 standard, so a comment or a name containing a comma can't shift the columns, and timestamps go out in ISO form rather than as "3 minutes ago." The result is a file a spreadsheet or a CRM reads without cleanup.
Where it starts matters. Starter can see its leads in the app, but only for the last 30 days and with no download; older ones are hidden rather than deleted, and there is no export button. Basic is where full lead history and the CSV arrive, so a workspace owns a portable copy of its own list from $9 a month.
A CSV is a manual, point-in-time snapshot. ESP sync is the automatic version that pushes each captured email into Mailchimp or Kit the moment it is entered, and it sits a tier higher, on Pro and Agency. Basic covers the download; the live push into a mailing list is the Pro feature.
Meta App Review
Meta App Review is the approval process a third-party app passes before it can use Instagram permissions on real accounts, which ReplyMagnet completed for its comment and messaging permissions in August 2026.
Before an app can read comments or send messages on a connected Business or Creator account in production, Meta reviews it: the app requests specific permissions, and a reviewer watches a recorded demonstration of the exact flow the app runs before granting them. Access to real account data stays off until that review passes.
ReplyMagnet passed this review in August 2026 for the permissions its pipeline needs, reading and replying to comments and sending direct messages through the Instagram Graph API. The demo ran with the follow gate switched off, since Meta's Spam policy restricts requiring a follow to reach content and the requested permissions are shown fully without it.
App Review is worth separating from two other Meta programs it is easy to confuse with. It is not the Meta Business Partner badge, and it is not the Tech Provider designation; those are separate partnership programs with their own criteria, and ReplyMagnet is not enrolled in either. Passing App Review means the permissions were granted, and nothing beyond that.
The distinction matters because the review is what separates a sanctioned tool from a browser script pretending to be a person. An approved app operates on the official API with the account owner's explicit consent, while the unapproved alternative runs a real ban risk on the account it drives.
link in bio
A link in bio is the single clickable URL an Instagram profile can display, long used as the one place a creator sends every follower regardless of what they asked about.
Instagram gives a profile one place for a working link, so for years the standard move has been to point every caption and every reply at "the link in my bio." It works, but it is one destination for everyone: a follower who wanted a specific checklist lands on the same page as one who wanted a pricing sheet, and then has to hunt for the right thing.
Comment-to-DM automation covers the same job from the other direction. Instead of sending everyone to one shared page, it answers the individual comment with a direct message carrying the specific file that comment asked for, and can capture an email or phone number on the way. The two work together as readily as they replace each other: a bio link for browsing, a DM for the person who already named what they want.
messaging window
A messaging window is the limited stretch of time a business may message someone after that person acts, and on Instagram its length depends on the action: 7 days after a feed comment, 24 hours after a story reply or live comment.
The window is not a single number. A feed comment opens the longest one, 7 days, because the public comment itself starts the clock; a story reply and a live comment each open the shorter 24-hour messaging window, since both are message-first interactions bound by the same rule an ordinary DM is.
Whichever length applies, the window is anchored to the person's last action, not to when the business gets around to answering. Once it closes there is no sanctioned way to reopen it from the business side: the recipient has to comment or message again to start a fresh clock.
For a delivery this is a hard deadline rather than a guideline. A reply parked in the overflow queue behind a full quota rides the same window, and if it waits past the limit the send is no longer permitted and the queued item lapses unsent. That is the one case where an over-quota comment doesn't eventually get its DM.
comment-to-DM automation
Comment-to-DM automation watches a post for a keyword comment, replies to it in public, and sends the commenter a direct message with the file or link they asked for.
The mechanic is solicited, not cold: nothing gets sent until a real person types the trigger word under a real post. That single detail is what separates this category from spam tooling, because every message traces back to an action the recipient chose to take first.
Under the hood it's three API calls chained together. Read the new comment through a webhook, post a public reply so the thread looks answered to anyone scrolling past, then open a direct message with the requested link. Each step is logged as its own event, so a creator can see exactly where a given comment landed.
ReplyMagnet runs this on Instagram's official Graph API rather than a browser automation script, which is the difference between a tool Meta has reviewed and one that risks the connected account.