The world's largest code hosting platform with Git version control, collaboration features, CI/CD, and project management.
Full ReviewCommunity platform with voice, video, and text channels for brand communities.
All Discord ToolsThe Discord and GitHub integration delivers repository activity notifications directly to your Discord server channels, keeping your development team informed about commits, pull requests, issues, and deployments without leaving Discord. GitHub provides native webhook support for Discord, making this one of the simplest integrations to set up — no third-party tools required.
Once configured, your Discord channels receive formatted messages whenever activity occurs in your GitHub repositories. You can track push events, pull request reviews, issue comments, CI/CD workflow status, release publications, and more. The messages include rich formatting with links back to the relevant GitHub pages, making it easy to click through and take action.
This integration is ideal for open-source projects with Discord communities, game development teams, or any engineering group that uses Discord for real-time communication. Contributors and community members can follow development progress in real-time without needing direct access to the GitHub repository.
In Discord, right-click the channel where you want GitHub notifications and select Edit Channel. Go to the Integrations tab and click Webhooks. Click New Webhook. Give the webhook a name like "GitHub" and optionally set an avatar (you can use the GitHub logo). Click Copy Webhook URL — you will need this URL in the next step. Click Save Changes.
Go to your GitHub repository and click Settings (the repository settings tab, not your account settings). In the left sidebar, click Webhooks, then click Add webhook. In the Payload URL field, paste the Discord webhook URL you copied, and append /github to the end of the URL. This suffix tells Discord to format the incoming data as GitHub notifications.
Set Content type to application/json. Leave the Secret field empty (Discord webhooks do not use GitHub secrets). Under Which events would you like to trigger this webhook?, select Let me select individual events. Check the events you want to receive notifications for.
Choose the GitHub events that are relevant to your team. Common selections include: Pushes (commits), Pull requests (opened, merged, closed), Issues (opened, closed, commented), Issue comments, Releases (new version published), Workflow runs (CI/CD status), and Branch or tag creation. Avoid selecting every event unless you want a high volume of notifications.
Ensure the Active checkbox is checked at the bottom of the webhook configuration page. Click Add webhook to save. GitHub will send a ping event to verify the connection. Go to your Discord channel and confirm that a ping confirmation message appeared.
Create a test commit or open an issue in the GitHub repository. Check the Discord channel to verify the notification appeared with the correct formatting. The message should include the event type, repository name, actor, and a link to the relevant GitHub page.
Repeat steps 2-5 for each additional repository you want to monitor. You can point multiple repositories to the same Discord webhook (same channel) or create separate webhooks for different Discord channels. A common pattern is to have one channel per repository or one channel for all repositories in an organization.
GitHub webhooks support over 30 event types, giving you fine-grained control over what triggers Discord notifications. You can configure multiple webhooks per repository pointing to different Discord channels — for example, CI/CD events to a #builds channel and release events to a #releases channel. Discord formats the webhook payload automatically when you use the /github URL suffix, showing event-appropriate embeds with colors (green for success, red for failure). No additional formatting configuration is needed on the Discord side.
| Data | Direction | Frequency |
|---|---|---|
| Push events (commits) | GitHub to Discord | Real-time |
| Pull request activity | GitHub to Discord | Real-time |
| Issue creation and comments | GitHub to Discord | Real-time |
| Release publications | GitHub to Discord | Real-time |
| CI/CD workflow status | GitHub to Discord | Real-time |
If the initial ping fails, verify the Discord webhook URL is correct and that you appended /github to the end. The full URL should look like: https://discord.com/api/webhooks/[id]/[token]/github. Also ensure the content type is set to application/json in GitHub.
GitHub automatically disables webhooks that fail repeatedly. Go to your repository's Settings > Webhooks and check the webhook's Recent Deliveries tab for errors. Common causes include the Discord webhook being deleted or the channel being removed. Re-create the Discord webhook and update the URL in GitHub if needed.
Edit the webhook in GitHub's Settings > Webhooks, click the webhook, and deselect events that are generating too much noise. Push events on active repositories are often the biggest culprit. Consider only monitoring pull request events and releases for a cleaner notification feed.
For richer notifications, use a Discord bot like GitHub Bot or build a custom bot using Discord.js that processes GitHub webhook events and formats them with custom embeds, buttons, and dropdown menus. You can also use GitHub Actions to send custom Discord notifications — add a step to your workflow YAML file that uses a Discord webhook action (like sarisia/actions-status-discord) to post build results with custom formatting, test coverage reports, or deployment status summaries directly to Discord.