Beginner~12 min setupCommunication & Project ManagementVerified April 2026
Slack logo
Jira logo

How to Create Jira Issues from Slack Messages with Make

Automatically convert urgent Slack messages into Jira tickets using reactions or slash commands with real-time processing.

Steps and UI details are based on platform versions at time of writing β€” check each platform for the latest interface.

β„Ή

Jira Cloud for Slack exists as a native integration, but it handles basic notifications but no conditional routing. This guide uses an automation platform for full control. View native option β†’

Best for

Dev teams who lose bug reports in Slack chat and need instant issue tracking

Not ideal for

Teams that prefer batching multiple reports into single tickets

Sync type

real-time

Use case type

notification

Real-World Example

πŸ’‘

A 12-person development team uses this to turn Slack bug reports into Jira tickets instantly. When someone posts a bug or adds a πŸ› emoji reaction, Make creates a properly formatted Jira issue with the message context. Before automation, developers missed 30% of bug reports buried in chat threads.

What Will This Cost?

Drag the slider to your expected monthly volume.

/mo
505005K50K

Each platform counts differently β€” Zapier: 1 task per trigger. Make: 1 operation per module per record. n8n: 1 execution per run.

Prices shown for annual billing. Based on published pricing as of April 2026.

Estimated ROI

1000

min saved/mo

$583

labor value/mo

Free

no platform cost

Based on ~2 min manual effort per operation at $35/hr fully loaded labor cost.

Implementation

Skip the setup

Import this workflow directly into Make

Copy the pre-built Make blueprint and paste it straight into Make. All modules, filters, and field mappings are already configured β€” you just need to connect your accounts.

Before You Start

Make sure you have everything ready.

Slack admin permissions to install apps and configure webhooks
Jira project admin access to create issues and view custom fields
API token for Jira Cloud or Server admin credentials
Read permissions for target Slack channels where reactions will trigger

Field Mapping

Map these fields between your apps.

FieldAPI Name
Required
Summarysummary
Descriptiondescription
Issue Typeissuetype
5 optional fieldsβ–Έ show
Reporterreporter
Prioritypriority
Labelslabels
Slack URL
Channel Name

Step-by-Step Setup

1

Scenarios > Create Scenario > Slack > Watch Events

Set up Slack webhook trigger

Create a new scenario in Make and add a Slack webhook module. Make generates a webhook URL that Slack will call when specific events happen. Copy this URL because you'll need it in Slack's app configuration. The webhook listens for reaction events and slash command usage.

  1. 1Click 'Create a new scenario' from Make dashboard
  2. 2Search for 'Slack' and select 'Watch Events'
  3. 3Copy the webhook URL from the module settings
  4. 4Leave event types empty for now
βœ“ What you should see: You should see a webhook URL starting with hook.integromat.com in the Slack module.
⚠
Common mistake β€” Don't configure event types yet - you need to verify the webhook in Slack first.
Make
+
click +
search apps
Slack
SL
Slack
Set up Slack webhook trigger
Slack
SL
module added
2

Slack Module > Connection > Add

Connect your Slack workspace

Authorize Make to access your Slack workspace by creating a connection. You'll need admin permissions or approval to install the Make app. The connection requires permissions to read messages, reactions, and user info. Make stores these credentials securely for future scenarios.

  1. 1Click 'Add' next to the Connection dropdown
  2. 2Choose 'Slack' from the connection types
  3. 3Click 'Continue to authorize'
  4. 4Grant permissions in the Slack popup window
βœ“ What you should see: You should see your workspace name in the Connection dropdown with a green checkmark.
⚠
Common mistake β€” If you're not a Slack admin, the app install will need approval first.
Make settings
Connection
Choose a connection…Add
click Add
Slack
Log in to authorize
Authorize Make
popup window
βœ“
Connected
green checkmark
3

Slack App Settings > Event Subscriptions

Configure Slack event subscriptions

In your Slack app settings, paste the Make webhook URL and subscribe to reaction_added events. This tells Slack to notify Make whenever someone adds a reaction to a message. You can also add message.channels events if you want to trigger on specific keywords. Test the webhook connection before proceeding.

  1. 1Go to api.slack.com and open your app
  2. 2Navigate to Event Subscriptions in the sidebar
  3. 3Paste the Make webhook URL in Request URL field
  4. 4Add 'reaction_added' to Subscribe to bot events
βœ“ What you should see: The Request URL should show 'Verified' with a green checkmark after pasting.
⚠
Common mistake β€” You must reinstall the Slack app to your workspace after changing event subscriptions.

This formula extracts the first 80 characters from Slack messages for Jira summaries and adds channel context. Paste this in the Summary field mapping section.

JavaScript β€” Custom Function{{if(length(1.event.text) > 80;
β–Έ Show code
{{if(length(1.event.text) > 80; 
  concat("#"; 1.event.channel_name; ": "; substring(1.event.text; 1; 77); "..."); 
  concat("#"; 1.event.channel_name; ": "; 1.event.text))}}

... expand to see full code

{{if(length(1.event.text) > 80; 
  concat("#"; 1.event.channel_name; ": "; substring(1.event.text; 1; 77); "..."); 
  concat("#"; 1.event.channel_name; ": "; 1.event.text))}}

// Clean up Slack user mentions in description
{{replace(replace(1.event.text; "<@([A-Z0-9]+)>"; "@user"; "g"); 
  "<#([A-Z0-9]+)\|([^>]+)>"; "#$2"; "g")}}

// Set priority based on reaction type
{{if(1.event.reaction = "bug" or 1.event.reaction = "warning"; "High"; 
   if(1.event.reaction = "question"; "Medium"; "Low"))}}

// Generate labels array from channel and reaction
{{split(concat("slack-generated,"; replace(1.event.channel_name; "#"; ""); ","; 1.event.reaction); ",")}}
4

Between modules > Filter > Set Condition

Add reaction filter

Insert a filter between Slack and Jira to only process specific emoji reactions like πŸ› or ⚠️. The filter checks the reaction name property and blocks everything else from reaching Jira. This prevents creating tickets for thumbs up or random emoji reactions. Set up an OR condition if you want multiple trigger reactions.

  1. 1Click the small settings icon between Slack and Jira modules
  2. 2Choose 'Set up a filter'
  3. 3Set condition: Reaction Name equals 'bug'
  4. 4Add OR condition for 'warning' emoji if needed
βœ“ What you should see: A small filter icon appears between modules showing your emoji conditions.
⚠
Common mistake β€” Emoji names in Slack API use text format - πŸ› becomes 'bug', not the actual emoji.
Slack
SL
trigger
filter
Condition
matches criteria?
yes β€” passes through
no β€” skipped
Jira
JI
notified
5

Add Module > Jira > Create an Issue

Add Jira module

Search for Jira in Make's app directory and select 'Create an Issue'. This module will receive the filtered Slack message data and transform it into a proper Jira ticket. Choose your Jira instance type - Cloud, Server, or Data Center - as the API endpoints differ slightly between versions.

  1. 1Click the + button after your filter
  2. 2Search for 'Jira' in the apps list
  3. 3Select 'Create an Issue'
  4. 4Choose your Jira deployment type
βœ“ What you should see: The Jira module appears with empty field mappings ready for configuration.
⚠
Common mistake β€” Jira Server uses different API paths than Cloud - Make auto-detects this from your connection.
6

Jira Module > Connection > Create Connection

Connect to Jira

Create a Jira connection using your API token and email. For Jira Cloud, generate an API token from your Atlassian account settings. Server installations use username and password. The connection needs permissions to create issues in your target project. Test the connection to verify API access.

  1. 1Click 'Add' next to Connection dropdown
  2. 2Enter your Jira instance URL
  3. 3Add your email and API token for Cloud
  4. 4Click 'Save' and test the connection
βœ“ What you should see: Connection shows 'Verified' status with your Jira instance URL displayed.
⚠
Common mistake β€” API tokens expire in Jira Cloud - set a calendar reminder to rotate them annually.
7

Jira Module > Project > Issue Type

Configure project and issue type

Select the target Jira project and issue type for your tickets. Make loads available projects from your connected instance. Choose 'Bug' or 'Task' as the issue type depending on your team's workflow. The project selection determines which custom fields appear in the next step.

  1. 1Select your target project from the dropdown
  2. 2Choose 'Bug' as the issue type
  3. 3Wait for custom fields to load
  4. 4Note any required fields marked with asterisks
βœ“ What you should see: Required fields like Summary and Description appear below the issue type selection.
⚠
Common mistake β€” Changing the project reloads all field options - you'll lose any mappings you've already configured.
8

Jira Module > Field Mapping

Map Slack message to Jira fields

Connect Slack message content to Jira ticket fields using Make's field mapper. Set the Summary to include the channel name and message timestamp. Map the full message text to Description, and add the Slack user's name as the Reporter. Include the original Slack message URL in a custom field for easy reference.

  1. 1Click in the Summary field and select Slack message text
  2. 2Map message content to Description field
  3. 3Set Reporter to the Slack user name
  4. 4Add Slack permalink to a URL custom field
βœ“ What you should see: All required Jira fields show blue mapped values from Slack properties.
⚠
Common mistake β€” Slack user emails might not match Jira usernames - use display names instead of email mapping.
Message template
πŸ“‹ New Issue: {{1.fields.summary}}
Project: {{1.fields.project.name}}
Priority: {{1.fields.priority.name}}
Assignee: {{1.fields.assignee.displayName}}
Slack fields
text
user
channel
ts
thread_ts
available as variables:
1.props.text
1.props.user
1.props.channel
1.props.ts
1.props.thread_ts
9

Jira Module > Priority > Labels

Add priority and labels

Set automatic priority levels based on the reaction type or channel. Bug reactions could default to High priority while general reactions stay Medium. Add labels to categorize tickets by source channel or reaction type. This helps with reporting and filtering in Jira later.

  1. 1Set Priority to 'High' for bug reactions
  2. 2Add label 'slack-generated' for tracking
  3. 3Include channel name as a label
  4. 4Set Components if your project uses them
βœ“ What you should see: Priority and Labels fields show the configured values and Slack-derived data.
10

Scenario > Run Once > Execution History

Test with a real Slack reaction

Go to a Slack channel and add your trigger emoji to any message. Check the Make scenario execution log to see if the webhook fired correctly. Verify the new Jira ticket was created with proper field mapping. Look for any error messages in the execution history and fix field mapping issues.

  1. 1Add a πŸ› reaction to a Slack message
  2. 2Return to Make and check execution history
  3. 3Click on the successful execution to see data flow
  4. 4Verify the Jira ticket was created correctly
βœ“ What you should see: Execution shows green checkmarks for all modules and a new Jira issue appears in your project.
⚠
Common mistake β€” Failed executions stay in history for 30 days - check them regularly to catch issues early.
Make
β–Ά Run once
executed
βœ“
Slack
βœ“
Jira
Jira
πŸ”” notification
received
11

Scenario Settings > ON/OFF Toggle

Activate the scenario

Turn on the scenario to process all future Slack reactions automatically. Set the scenario to run immediately when webhooks arrive for real-time ticket creation. Monitor the first few executions to ensure everything works smoothly in production. Consider setting up error handling for API failures.

  1. 1Click the ON/OFF toggle at bottom left
  2. 2Confirm the scenario activation
  3. 3Check that webhook status shows 'Listening'
  4. 4Test with one more reaction to verify
βœ“ What you should see: Scenario status shows 'ON' with a green indicator and active webhook listener.
⚠
Common mistake β€” Active scenarios count toward your execution limit even when not triggered.

Going live

Production Checklist

Before you turn this on for real, confirm each item.

Troubleshooting

Common errors and how to fix them.

Frequently Asked Questions

Common questions about this workflow.

Analysis

VerdictWhy Make for this workflow

Use Make for this if your team processes 20+ Slack reactions daily and needs complex field mapping from message content. Make's visual router system handles multiple emoji types cleanly, and the text parsing functions clean up Slack's markup before sending to Jira. Skip Make if you just want basic ticket creation - Zapier's Slack integration is simpler for single reaction types.

Cost

Real math on costs: each reaction fires 2 operations (webhook + Jira create). At 100 reactions per month, that's 200 operations costing $1.80 on Make's Pro plan. Zapier charges $20/month for the same volume on their Starter plan. Make wins on cost until you hit 1000+ reactions monthly.

Tradeoffs

Zapier handles Slack user lookup better - it automatically resolves @mentions to real names without custom text parsing. n8n gives you more control over duplicate prevention with its built-in database nodes for tracking processed messages. Power Automate integrates better if you're already using Microsoft tools. But Make's conditional routing lets you send different reaction types to different Jira projects without multiple scenarios.

Things you'll hit: Slack's webhook verification fails randomly during high traffic and requires URL regeneration. Jira's API returns cryptic field validation errors when required custom fields aren't mapped. User permissions get messy when the Make Slack app needs access to private channels where bugs get reported.

Ideas for what to build next

  • β†’
    Add status updates back to Slack β€” Send Slack notifications when Jira issues change status or get resolved. Creates a feedback loop for reporters.
  • β†’
    Implement slash command triggers β€” Allow users to type /bug [description] in Slack for more structured issue creation with predefined fields.
  • β†’
    Set up digest notifications β€” Send daily summaries to team channels showing new issues created from Slack reactions with links and status updates.

Related guides

Was this guide helpful?
← Slack + Jira overviewMake profile β†’