# Work Instagram and Messenger DM leads from one lead board

> Every qualified DM lead lands on a stage board where reps read the full history, reply, and push the good ones to your CRM.

- Workflow type: app
- Services: Manychat, HubSpot
- Categories: Sales
- Published: 2026-08-31

## What it does

- Lays out every lead your DM automation has qualified on a board with one column per qualification stage, so reps see the whole pipeline instead of clicking through an inbox one contact at a time.
- Opens a detail panel on any card where a rep can move the lead to another stage, add or clear labels, send a personal reply, or start one of the nurture sequences you already built.
- Puts a Research and draft button on every card that hands the lead to a background assistant, which reads everything known about them, writes a short qualification brief with a recommended next step, and drafts a reply the rep can edit before sending.
- Adds a Push to CRM button that checks your CRM for an existing record first, then creates the contact and opens a deal, and remembers the link so the same lead never gets pushed twice.

## What you'll need

- A Manychat account with DM automation already running on Instagram or Messenger
- A contact field in Manychat that stores each lead's qualification stage, plus the list of values you use for it
- A spare Manychat contact field to hold the CRM record id once a lead has been pushed
- A HubSpot login that can create contacts and deals

## Prompt

Build me an app my sales reps open every morning to work the leads our Instagram and Messenger DM automation produces in Manychat, instead of clicking through the Manychat inbox one contact at a time.

The main surface is a lead board with one column per qualification stage. In settings I pick which Manychat custom field holds the lead stage and which of its values map to which column, so the board matches whatever my bot already writes. Populate those settings pickers with Get Custom Fields and Get Tags so I choose from my real fields and tags rather than typing strings. Let me also configure which custom field values appear on the face of each card.

Each column is populated by a Find Subscriber by Custom Field query against the configured stage field and that column's value. This is a hard design constraint, not an implementation detail: Manychat has no list all subscribers endpoint, so a custom field query is the only way to build the board. It works on text and number field types only, returns at most 100 results, and has no pagination. Show a clear notice on any column that hits the 100 result cap so reps know the column is truncated. Card contents come from Get Subscriber Info, showing the subscriber's name, their tags, and the custom field values I chose to display.

Throttle the board load. Subscriber reads are capped at 10 requests per second per account and that budget is shared across everything using the same API key, so fetch columns and card details through a queue rather than firing one request per card at once, and cache what you fetch for the session.

Clicking a card opens a detail panel with everything the rep needs. Move the lead to another stage with Set Custom Field by Name, writing to the same field the board reads so the card moves columns. Add or clear labels with Add Tag to Subscriber by Name and Remove Tag from Subscriber by Name. Send a personal reply with Send Content. Or fire one of my existing nurture sequences, picked from a dropdown populated by Get Flows and triggered with Send Flow.

Handle send failures loudly rather than silently. Send Content fails with error 3021 when the subscriber is outside the 24 hour messaging window without a message tag. When that happens, surface it in the detail panel in plain language: tell the rep the reply was not delivered, say why, and suggest sending a nurture sequence instead. Never show a success state for a message that did not actually go out.

Every card has a Research and draft button that kicks off a background agent for that lead. The agent reads everything Manychat knows about the subscriber with Get Subscriber Info, including all tags and custom field values, and produces two things: a short qualification brief that ends in a recommended next step, and a drafted DM written for that specific lead. Save both in the app keyed to the subscriber id, so the card still shows them the next time anyone opens the board. The rep can edit the draft in the detail panel before sending it with Send Content. Show the agent's progress on the card while it runs.

Every card also has a Push to CRM button. It first checks HubSpot with Search Contacts to avoid creating a duplicate. If there is no match, it files the record with Create Contact and opens a deal with Create Deal associated to that contact. It then writes the resulting HubSpot contact id back into a dedicated Manychat custom field using Set Custom Field by Name, so the same lead can never be pushed twice. If that field is already populated, or Search Contacts finds an existing contact, show the card as already filed and disable the button rather than hiding it. Let me configure the deal name pattern, pipeline and stage used when a lead is pushed.

## How to customize

- Choose which contact field drives the board and which of its values become columns, so the layout matches the stages your bot already writes.
- Pick which contact field values and tags show on the face of each card, so reps see the qualifying answers that matter to your team.
- Change the nurture sequences offered in the detail panel, and set the deal name, pipeline and stage used when a lead is pushed to the CRM.

## FAQ

### Does this replace the Manychat inbox?

For working qualified leads, yes. The board is built for reps who need to see every lead at once, sorted by stage, and act on the promising ones. You will still use the Manychat inbox for general conversations and for building the automation itself.

### Will this work if my leads come from Instagram rather than Messenger?

Yes. The board reads whatever your DM automation has saved against each contact, so it works the same whether those conversations happened on Instagram or Messenger.

### Why does a reply sometimes fail to send?

Messaging platforms only let you send a free-form reply within 24 hours of the contact's last message. When a lead has gone quiet longer than that, the reply is blocked. The app tells you plainly when this happens instead of pretending the message went out, and suggests starting one of your nurture sequences instead.

### How many leads can each column show?

Up to 100 per column. Manychat has no way to list every contact at once, so each column is built from a search on your stage field, and those searches return at most 100 results. Columns that hit the cap say so, which usually means it is time to work the stage down.

### Can the same lead get pushed to HubSpot twice?

No. Before creating anything the app searches HubSpot for an existing contact, and after a successful push it writes the new record id back onto the lead in Manychat. Cards that already have that id show as filed and the button is switched off.

Use this prompt in General Input: https://www.generalinput.com/prompts/work-instagram-and-messenger-dm-leads-from-one-lead-board