You want Discord to automatically send messages when something happens elsewhere, like a new YouTube video or a weather alert. IFTTT is a free automation service that connects apps and devices using triggers and actions. A Discord webhook is a simple URL that lets external services post messages into a specific text channel. This article explains how to create a Discord webhook, connect it to IFTTT, and set up your first automation trigger.
Key Takeaways: Setting Up Discord Webhooks With IFTTT
- Server Settings > Integrations > Webhooks: Create a webhook URL for any text channel in your Discord server.
- IFTTT > Create > Webhooks service: Use the Webhooks service as the action component of your applet to send data to Discord.
- Webhook URL + JSON body: IFTTT sends a POST request with a JSON payload that Discord interprets as a message.
How Discord Webhooks and IFTTT Work Together
A Discord webhook is a unique URL that acts like a virtual user. When an external service sends an HTTP POST request to that URL with a properly formatted JSON body, Discord posts the content as a message in the associated channel. The webhook can have its own name and avatar, separate from your personal Discord account.
IFTTT stands for If This Then That. It uses applets that combine a trigger from one service with an action from another service. For example, when you post a new photo on Instagram, IFTTT can save it to Google Drive. For Discord automation, the action is almost always the Webhooks service, which sends data to a webhook URL.
The webhook service in IFTTT requires two things: the webhook URL from Discord and a JSON body that defines the message content. IFTTT supports multiple ingredients like EventName, OccurredAt, and custom values from the trigger service. These ingredients fill placeholders in your JSON template.
Prerequisites Before You Start
You need a Discord server where you have the Manage Webhooks permission. This permission is enabled by default for server administrators and users with the Manage Server role. You also need an IFTTT account. The free IFTTT plan supports up to three applets, which is enough for testing and basic automation.
Steps to Create a Discord Webhook and Connect It to IFTTT
- Create a Discord Webhook
Open Discord and go to the server where you want the webhook. Click the server name at the top left, then select Server Settings. In the left menu, click Integrations, then click Webhooks. Click the Create Webhook button. Give the webhook a name, choose the channel where messages will appear, and optionally set an avatar. Click Copy Webhook URL and save it in a text file or password manager. - Log In to IFTTT and Start a New Applet
Go to ifttt.com and sign in. Click your profile icon in the top right, then select Create. This opens the applet builder. Click the If This part to choose a trigger service. - Choose a Trigger Service and Event
Search for the service you want to connect, such as YouTube, RSS Feed, Weather Underground, or Twitter. Select the specific trigger event. For example, with YouTube, choose New video uploaded by you. Follow the prompts to connect your account and configure the trigger. Click Create trigger. - Add the Webhooks Action
Click the Then That part. Search for Webhooks and select the Webhooks service. If you have not connected it before, click Connect and follow the authorization steps. Select the Make a web request action. - Configure the Web Request
Paste the Discord webhook URL you copied earlier into the URL field. Set Method to POST. Set Content Type to application/json. In the Body field, enter a JSON payload. A basic example is:{ "content": "New video from YouTube: {{Title}}" }
Replace {{Title}} with the correct ingredient from your trigger. IFTTT shows available ingredients in a list below the Body field. Click Add ingredient to insert them. - Finish and Test the Applet
Click Create action, then click Continue. Review the applet summary. Click Finish. IFTTT activates the applet immediately. Trigger the event manually if possible, or wait for the next occurrence. Check your Discord channel for the webhook message.
Advanced JSON Payload Options
Discord webhooks support more than plain text. You can send embedded messages with titles, descriptions, fields, colors, and images. Use the embeds array in your JSON body. For example:
{ "embeds": [{ "title": "{{Title}}", "description": "{{Description}}", "color": 15258703 }] }
The color value is a decimal representation of a hexadecimal color. Use an online converter to get the decimal number for your preferred color. IFTTT passes text-based ingredients, so you cannot include images directly. Use the URL ingredient if the trigger provides a link to an image.
Common Issues and Limitations
Webhook Message Does Not Appear in Discord
If the message does not show up, check the IFTTT activity log. Click your profile icon, select My Applets, then click the applet name. Scroll to the bottom and look for the Activity section. If the action failed, IFTTT shows an error message. Common causes include an expired webhook URL, incorrect JSON syntax, or a blocked request from Discord. Regenerate the webhook URL in Discord and update the IFTTT applet.
IFTTT Ingredient Names Do Not Match the JSON
IFTTT ingredient names are case-sensitive and must be typed exactly as shown. For example, if the ingredient is listed as Title, use {{Title}} not {{title}}. If the ingredient contains spaces, IFTTT automatically replaces them with underscores. Verify the ingredient name by clicking the Add ingredient button and selecting it from the list.
Discord Rate Limits for Webhooks
Discord imposes rate limits on webhook requests. The limit is 30 requests per minute per webhook. If your IFTTT trigger fires more frequently, Discord drops the excess messages. For high-frequency triggers, consider using a different automation service or adding a delay in IFTTT. The free IFTTT plan does not support delays, but the Pro plan includes a Filter and Delay action.
| Item | Discord Webhook | IFTTT Webhooks Service |
|---|---|---|
| Purpose | Receives POST requests and posts messages to a channel | Sends POST requests with custom data to any URL |
| Configuration location | Server Settings > Integrations > Webhooks | IFTTT applet builder > Then That > Webhooks |
| Authentication | Unique URL with embedded token | None beyond the webhook URL |
| Rate limit | 30 requests per minute per webhook | Depends on IFTTT plan; no explicit limit |
| Supported content | Text, embeds, files up to 8 MB | Text and JSON only; no file uploads |
| Customization | Name, avatar, channel | Headers, body, content type |
You can now automate Discord messages from hundreds of services using IFTTT. Start with one simple applet, such as posting new YouTube uploads to a community channel. Experiment with embedded messages to include links, colors, and descriptions. For multi-step automation, combine IFTTT applets with Discord bots that process webhook payloads further.