GPTMap

ChatGPT Scheduled Tasks and Webhook Automation: From Timed Reminders to Event-Driven Workflows

Scheduled tasks now support webhook triggers. This guide covers the difference between schedules and event-driven runs, wiring up Gmail / Slack / GitHub sources, Free vs Plus limits, and pre-launch event-source checks.

TL;DR
ChatGPT scheduled tasks support webhook triggers as of 2026-08-25: Gmail messages, Slack channel messages, and GitHub PR activity start tasks automatically -- polling becomes event-driven. Plus / Pro create webhook tasks; tasks are shareable with customizable independent copies; Free is capped at 3 active tasks, once per day, and Free / Go cannot create webhook tasks.
ChatGPT scheduled tasks (Scheduled tasks) are ChatGPT's built-in automation: define a task in natural language, let it run on a time schedule, or -- after 2026-08-25 -- trigger it automatically from Gmail / Slack / GitHub webhook events, with results pushed to your conversations.

How to

  1. Pick the trigger by task nature

    Fixed rhythms (a daily briefing) use a time schedule; event responses (PR reports, email digests) use webhooks. Webhook tasks require Plus / Pro.

  2. Pre-check the event source

    Verify from the command line that events actually fire: query PRs through the GitHub REST API, send a test message through your Slack webhook. If the source is dead, the task will never run.

  3. Connect apps and create the task in ChatGPT Work

    Connect Gmail / Slack / GitHub in ChatGPT Work, pick what to monitor (senders, channels, repos), and write the task instructions and output format in natural language.

  4. Run once and verify the output

    Manufacture a test event (open a test PR, send a test message), confirm the task fires and the output matches expectations; refine the instructions and run again if not.

  5. Share with the team and manage limits

    Share collaborative tasks by link (teammates customize and get independent copies); Free users should watch the 3-active-task cap and reserve slots for the highest-value tasks.

ChatGPT scheduled tasks (Scheduled tasks) are ChatGPT's built-in automation: define a task in natural language, let it run on a time schedule, or -- as of 2026-08-25 -- trigger it automatically from Gmail, Slack, and GitHub webhook events. This article covers the difference between the two trigger generations, how to wire the three event sources, the per-plan limits, and the pre-launch event-source check that prevents the most common failure: a task that is created but never fires.

Note: the product facts in this article (event types, limits, sharing rules) were verified line-by-line against the official ChatGPT Release Notes (docs-checked version); the pre-check commands come from the official GitHub and Slack documentation.

1. Two Trigger Modes: Time Schedules vs Webhooks

DimensionTime-scheduled taskWebhook-triggered task
Firing logicRuns at the scheduled time (once or recurring)Runs when an event occurs
MindsetCron-style pollingEvent-driven
Good forDaily briefings, weekly summaries, remindersPR reports, email digests, channel monitoring
Plans that can createFree / Go / Plus / ProPlus / Pro
Event sourcesNone (time only)Gmail new messages / Slack channel messages / GitHub PR activity

The selection rule in one line: fixed rhythms use schedules, event responses use webhooks. "Give me a report at 9am every day" is a schedule; "summarize PR activity in our repo as it happens" is a webhook.

2. Limits and Plans: Check This Table Before Creating

CapabilityFreeGoPlusPro
Create time-scheduled tasks
Active task cap3As shown in-productAs shown in-productAs shown in-product
Run frequency capOnce per task per dayAs shown in-productAs shown in-productAs shown in-product
Create webhook tasks
Share tasks / receive shared tasks

Experience-value note: the official documentation explicitly states the Free cap ("up to 3 active tasks", "once per day") and that "Free and Go cannot create webhook tasks"; the exact caps for Go / Plus / Pro are not published -- go by what ChatGPT shows in-product. On Free, spend the 3 slots on the highest-value tasks and consider Plus for event-driven needs.

3. Pre-Check the Event Source Before Launch

The number-one cause of "created the task, it never fires" is a dead event source. The chain is "external event -> ChatGPT Work -> task run"; any broken link looks like silent non-firing. So verify both ends from the command line first.

Verify the GitHub PR source (confirm the repo you will monitor is reachable and has activity):

curl -s "https://api.github.com/repos/OWNER/REPO/pulls?state=open&per_page=5" | jq '.[].title'

If this lists open PR titles, the repo and access are fine. Swap in the OWNER/REPO of the repo your task will monitor and eyeball that it actually has PR activity.

Check one PR's key fields (confirm the exact monitored object is visible):

curl -s "https://api.github.com/repos/OWNER/REPO/pulls/123" | jq '{title, state, author: .user.login}'

Verify the Slack outbound webhook (confirm your workspace allows webhook delivery):

curl -X POST -H 'Content-type: application/json' \
  --data '{"text":"ChatGPT task webhook pre-check"}' \
  https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXX

Swap in your own incoming webhook URL; seeing "ChatGPT task webhook pre-check" in the channel means the pipe is open. Only after Slack-side success should you connect the app inside ChatGPT.

Both commands come from the official GitHub and Slack documentation -- they are generic pre-checks that verify "the event source side is alive"; the ChatGPT-side connection state is governed by the app authorization inside ChatGPT Work.

4. Writing the Task: Instructions Decide Output Quality

After connecting apps in ChatGPT Work, write the task in natural language. Three habits that stabilize output:

  • Specify the output structure: "summarize each PR's title, author, and current status in a table" -- same principle as structured prompting: the more specific, the steadier.
  • Specify scope and cadence: for webhook tasks, "only open PRs", "only today's mail"; for schedules, "weekdays at 9am".
  • Specify what happens after: report only, or also suggest next actions -- otherwise the closing behavior drifts run to run.

5. Sharing and Collaboration

A task is not done when you build it. Per the official sharing mechanism: Free / Go / Plus / Pro can all share tasks via link, recipients can review and customize the instructions, connect their own apps, and create an independent copy -- your original is untouched. One restriction to remember: running a shared webhook-triggered task requires the corresponding Work access, so check a teammate's plan before sharing a webhook task to a Free account.

6. Troubleshooting

SymptomLikely causeFix
Webhook task never firesDead event source / wrong monitored targetRe-run the section 3 pre-checks; verify repo, channel, sender scope
Fires but output is uselessInstructions too vagueAdd structure, scope, and closing behavior per section 4
Free plan cannot create a webhook taskPlan limitationUpgrade to Plus / Pro, or approximate with a scheduled task
Cannot add another active taskFree's 3-task capDelete or merge low-value tasks to free a slot
Shared task will not run for a teammateWebhook tasks require Work accessConfirm the recipient's plan and Work access

Frequently Asked Questions

1. What is the difference between a schedule and a webhook trigger?

A time-scheduled task "runs when the time comes" -- daily briefings, weekly summaries, fixed rhythms. A webhook task "runs when something happens" -- new Gmail messages, Slack channel messages, or GitHub PR activity start it automatically. The former is cron thinking, the latter is event-driven; pick by task nature.

2. Can Free users use scheduled tasks?

Yes, with limits: up to 3 active tasks, each running at most once per day, and no webhook-triggered tasks. Time schedules and receiving shared tasks are available on Free. Event-driven automation requires Plus or Pro.

3. Which event sources do webhook tasks support?

Three official sources: new Gmail messages, Slack channel messages, and pull request activity in a GitHub repository. Connect the app and pick what to monitor inside ChatGPT Work. Webhook tasks can be created on web, iOS, and Android (Plus / Pro).

4. After I share a task, can teammates change mine?

No. Recipients can review and customize the task instructions, connect their own apps, and create an independent copy -- your original task is untouched. Note that running a shared webhook-triggered task requires the corresponding Work access.

5. What should I check before launching a webhook task?

Pre-check the event source: verify from the command line that GitHub PR queries and your Slack webhook actually produce events (commands in this article), confirm the monitored repo / channel is right, then connect the app and create the task in ChatGPT. Launching without source checks is the number-one cause of "my task never fires."

6. Where do task results show up?

After a task runs, results are available inside ChatGPT. Recipients of a shared task get the copy's results in their own conversations.

Next Steps

Key points

  • Webhook triggers launched 2026-08-25: Gmail new messages, Slack channel messages, and GitHub PR activity can all start tasks automatically
  • Plus / Pro can create webhook tasks; Free / Go are limited to time schedules and cannot create webhook tasks
  • Free is capped at 3 active tasks, each running at most once per day
  • Tasks can be shared with Free / Go / Plus / Pro; recipients customize instructions and get an independent copy; running a shared webhook task requires Work access
  • Pre-check event sources before launch: verify GitHub PR and Slack webhook events from the command line
  • Time schedules fit fixed rhythms like a daily briefing; webhooks fit event responses like PR updates

Frequently asked questions

A time-scheduled task 'runs when the time comes' -- daily briefings, weekly summaries, fixed rhythms. A webhook task 'runs when something happens' -- new Gmail messages, Slack channel messages, or GitHub PR activity start it automatically. The former is cron thinking, the latter is event-driven; pick by task nature.

Official references

Related articles

Subscribe to GPTMap Weekly

One email every Monday: curated OpenAI updates, deep dives, and best practices. No ads, unsubscribe anytime.

GPTMap EditorialPublished 2026-08-30 7 min read
Test environment (EEAT)
Last tested: 2026-08-30
Model used: gpt-5.6