Connecting ChatGPT and Slack
Almost every guide to this pair documents one direction and leaves you to discover halfway through that it was the wrong one. So this page starts with the four routes and which way the data moves through each, then commits to the one that fits the common case.
Short answer
There are two genuinely different things people mean by this, and they need opposite routes. If you want to talk to ChatGPT from inside Slack — mention a bot, get an answer in-thread — install a connector app and you are done in five minutes. If you want ChatGPT to read your Slack history so it can answer questions about what your team already discussed, that is a workspace-data connector on the ChatGPT side, it requires a business-tier ChatGPT plan plus a Slack admin who approves it, and it will not work on a personal account no matter how you configure it.
Four ways to connect them, and what each one costs you
Read the direction row first. Roughly half the connections people set up between these two products turn out to move data the opposite way from what they needed, and no amount of configuration fixes that — it's a property of the route, not the settings.
First-party ChatGPT app for Slack
Recommended belowOpenAI's own Slack app. You mention it or use a slash command, it answers in the channel or thread, and it can summarise the thread it was called in.
Direction
Slack → ChatGPT → Slack. The model sees the thread you invoke it in and nothing else in the workspace.
Trigger
On demand — a mention, a slash command, or a message in a DM with the bot.
Real cost
Free Slack plan is fine. On the ChatGPT side it draws against whatever plan the installing account holds, so a Plus account's rolling message cap is shared between Slack and the web app.
How it breaks
Silent non-response rather than an error. Usually the bot was never invited to the private channel, or the workspace has app installs restricted and the request is sitting in an admin queue.
Slack as a ChatGPT data connector
The reverse arrangement: you authorise ChatGPT to search Slack, then ask questions in ChatGPT about what the team has discussed.
Direction
Slack → ChatGPT only. Nothing is written back to Slack; this route cannot post messages.
Trigger
On demand, at query time. It searches when you ask rather than syncing continuously, so very recent messages are sometimes not yet visible.
Real cost
Requires a business or enterprise ChatGPT plan — this is the route people on Plus keep trying and failing to find. Slack side needs a paid plan for full history and an admin approval.
How it breaks
Answers confidently from partial history. Free-plan Slack workspaces hide older messages from search entirely, so the model reports 'no discussion of that' about a thread you remember clearly.
Zapier or Make in the middle
Middleware watches a Slack event, sends the text to an OpenAI step, and posts the result back. The route to pick when you want something to happen automatically rather than when asked.
Direction
Both, and you choose per automation. This is the only route that can fire without a human in the loop.
Trigger
Event-driven — new message in a channel, reaction added, form submitted — or on a schedule.
Real cost
Three meters at once: the middleware's task count, your own OpenAI API spend, and Slack rate limits. A busy channel will exhaust a starter middleware plan in days.
How it breaks
Runaway loops. The classic is an automation that posts its own output into the channel it watches, which then triggers it again. Always exclude bot messages in the trigger filter.
Custom bot against both APIs
Your own Slack app calling the OpenAI API directly, hosted wherever you like. The route for anything with real logic — routing by channel, checking permissions, retrieving from your own data first.
Direction
Both, unrestricted, and you control exactly what the model is allowed to see.
Trigger
Anything you implement — events, schedules, interactive buttons, modals.
Real cost
API tokens plus hosting, which is usually the cheapest option at volume and the most expensive in engineering hours.
How it breaks
Slack's three-second acknowledgement rule. You must respond to the event immediately and post the model's answer afterwards, or Slack retries and your users get duplicate replies.
Routes and menu locations verified August 2026. Both vendors ship connector changes without notice and workspace admins can disable any of this on their side, so the route mechanics above are the durable part and the Slack app directory listing is authoritative over anything on this page.
Take the first-party connector app route
For the common case — a team that wants to ask a question without leaving the channel they are already in — the official app is the right answer and every other route is over-engineering. It takes minutes, adds no new bill, and there is nothing to maintain. Move to middleware only when you need something to fire on its own, and to a custom bot only when the model needs to see data that lives somewhere other than Slack.
- 1
Check who is allowed to install apps before you start
Most of the failures on this route are permission failures, and they are much easier to diagnose before you have half-configured something. In Slack, open the app management area for your workspace and look at whether members can install apps directly or whether installs need approval. If approval is required, send the request first and do the rest when it clears — a pending install looks exactly like a broken one.
- 2
Install the ChatGPT app from the Slack app directory
Search the directory for the official OpenAI listing rather than following a link from a blog post; there are lookalike apps with similar names and far broader permission requests. Confirm the publisher on the listing page before you authorise.
- 3
Authorise with the ChatGPT account whose plan should pay
This is the step worth slowing down on. The connection is bound to the account that authorises it, and the usage lands on that account's plan and cap. If the point of this is team-wide access, authorise from a workspace or business account rather than someone's personal Plus login — otherwise one person's rolling cap becomes the whole team's bottleneck, and access disappears if they leave.
- 4
Invite the bot to the channels that need it
Installation makes the app available to the workspace; it does not put it in any channel. In each channel you want it in, invite it the same way you would add a member. Private channels always need this explicitly, which is the single most common cause of 'the bot ignores me'.
- 5
Test in a thread with real context, not an empty channel
Mention the bot inside an existing conversation of a dozen or more messages and ask it to summarise. This verifies the part that actually matters — that it can read thread context — rather than just that it responds. If it answers generically with no reference to the discussion, it is connected but not seeing history, which is a scope problem rather than a connection problem.
- 6
Tell your team what it can see, in the channel
Post a short note saying the bot reads the thread it is invoked in and that messages sent to it leave Slack. People will otherwise assume either that it sees everything or that it sees nothing, and both assumptions cause problems — the first stops them using it, the second gets confidential text pasted into it.
What you are actually granting
The consent screen scrolls past in two seconds. Here is the same information slowly, because on a shared workspace this is the part that gets people in trouble.
Read messages in channels where it is present
The bot can read the conversation it is invited to, including history it can see, so it can answer with context. It cannot read channels it was never invited to — which is why adding it to a channel is a real permission decision, not a convenience step.
Post messages and reply in threads
Its answers are ordinary Slack messages: visible to everyone in the channel, searchable, and retained under your workspace retention policy. There is no private-answer mode in a shared channel.
Read basic profile and workspace metadata
Display names and channel names, so replies can address people correctly. Not email addresses or private profile fields.
Send conversation text to OpenAI
The part with the real consequences. Anything in a thread the bot is asked to work on leaves your Slack workspace and is processed by OpenAI under the terms of the authorising account's plan — which differ substantially between consumer and business tiers. If your workspace handles regulated data, settle this before installing rather than after.
The data-connector route and full message history both need a paid Slack workspace — free-plan history limits are what make ChatGPT's answers about past discussions unreliable.
What this connection cannot do
Worth reading before you spend an afternoon trying. These are limits of the integration itself, not settings you have missed.
- ✕It cannot search across your whole Slack workspace. That is the separate data-connector route, and it needs a business-tier ChatGPT plan.
- ✕It will not respond to messages in a channel it hasn't been invited to, and it does not tell you that — it simply stays quiet.
- ✕It cannot act on your behalf in Slack: no creating channels, no inviting people, no editing anyone else's messages.
- ✕Files shared in a thread are not reliably readable. Treat attachment handling as unsupported and paste the relevant text instead.
- ✕Nothing about it is scheduled. It answers when asked; a daily digest needs the middleware or custom-bot route.
- ✕Usage lands on the authorising account's cap. Heavy team use through one personal Plus login will hit that account's rolling limit and stop for everyone.
Worth wiring up for
Catching up on a long thread
The single highest-value use and the one that needs no configuration beyond the install. Invoke it in a fifty-message thread and ask what was decided and what is outstanding. Far better received than asking a colleague to recap.
Drafting the reply you're avoiding
Ask it in a DM to draft a response to something you paste in, then edit and post yourself. Keeping the draft in a DM rather than the channel avoids the awkwardness of a visibly AI-drafted message.
Turning a decision thread into a written summary
Ask for the outcome as a short set of bullets you can paste into a doc. Pairs well with a wiki or notes tool — see our ChatGPT and Notion guide for the route that writes it there directly.
Translating in a distributed team
In-channel translation of a message thread, which removes the copy-out-copy-back loop that stops people bothering. Works well enough to change behaviour, which is a low bar most integrations miss.
Common questions
Can ChatGPT read my whole Slack workspace?
Only through the data-connector route, and only on a business or enterprise ChatGPT plan with a Slack admin's approval. The Slack app most people install reads just the thread it is invoked in. If you are on ChatGPT Plus and hunting for a setting that lets it search all of Slack, you are looking for something that does not exist on that plan.
Why does the bot ignore me in some channels?
It has almost certainly not been invited to that channel. Installing the app makes it available workspace-wide but puts it in no channels at all, and private channels always require an explicit invite. It stays silent rather than erroring, which makes this look like a broken integration when it is a one-click fix.
Does this use up my ChatGPT message limit?
Yes. Requests through Slack draw on the same allowance as the web app for the account that authorised the connection, so a team leaning on one personal Plus login will hit that person's rolling cap and lose access together. If more than a couple of people will use it, authorise from a business plan.
Is it safe to use in a channel with confidential information?
That depends entirely on which plan authorised it, and it is worth checking rather than assuming. Content the bot processes leaves Slack and is handled under the authorising account's terms; consumer and business tiers differ meaningfully in how that content may be used. Under a compliance obligation, get the business-tier terms reviewed before installing, not after someone has pasted a contract into a thread.
Can I make it post a summary every morning without being asked?
Not with the first-party app, which is purely on-demand. Scheduled behaviour needs the Zapier/Make route or a custom bot. Budget for the middleware task count if the channel is busy — scheduled digests are cheap, per-message automations are not.
Which route should I pick if I just want fewer tabs open?
The first-party app. That is exactly the problem it solves, it costs nothing extra, and it takes about five minutes including the permission check. Reach for middleware only once you want something to happen without anyone asking for it.
Related reading
People ask AI how to connect Slack. Does it mention your integration?
Someone wiring ChatGPT into Slack asks an assistant before they open a docs site, and the assistant answers from pages like this one. If your tool solves this connection more directly, that answer is where the install comes from — check whether you appear in it.
📬 Get the best new AI tools delivered weekly
One concise email with fresh launches, trending picks, and featured standouts.