Automate Typeform to ClickUp task creation in Make.com, then notify Slack with mapped fields, assignee, due dates, and error alerts for every new submission.
Introduction
If you run lead intake with Typeform, you already know the messy part: every submission needs to become a trackable work item in ClickUp, and someone needs to see it in Slack. The manual version is copy answers out of Typeform, create a task in ClickUp, set due dates and assignees, then paste a summary into a Slack channel. Do that 20 times a week and admin eats your day.
In this guide, you will set up a Cross-Platform Automation (XPA) that automatically creates the ClickUp task from each Typeform response and posts a clean Slack message with the key details. You will also set it up in a way that survives missing answers, keeps field mappings stable, and is easy to test.
By the end, you will know how to connect Typeform to ClickUp task creation and Slack notifications in Make.com.
What You'll Need
- An active Make.com account (paid plan is usually required for higher-volume runs and reliable scheduling).
- Typeform workspace access, plus one form that collects the data you want to turn into tasks.
- ClickUp access to the target Space/Folder/List where tasks should be created, plus permission to create tasks and set custom fields.
- Slack access to the workspace and the channel you will notify.
- A small set of agreed mappings, for example:
- Typeform “task title” answer → ClickUp Task name
- Typeform “due date” answer → ClickUp Due date
- Typeform “assignee” answer (optional) → ClickUp Assignee
- Typeform answers for priority, department, request type → ClickUp custom fields and included in the Slack message
Also, skim the ideas behind Cross-Platform Automation (XPA) here: Cross-Platform Automation (XPA).
How It Works (The Logic)
When a new Typeform response is submitted, Make.com triggers on that response. Make.com then creates a new ClickUp task using mapped fields (task name, description, due date, status, custom fields). After the task is created, Make.com takes the ClickUp task link and the same key values (like requester and priority) and sends a Slack message to your chosen channel.
The important part is that every downstream step uses data from the trigger step and the create-task output, so you do not re-fetch or drift values across apps.
Step-by-Step Setup
1) Create a new Make.com scenario
- Log into Make.com.
- Create a new scenario.
- Name it:
Typeform → ClickUp task + Slack notify.
2) Add the Typeform trigger (new submission)
- Add module: Typeform.
- Select the trigger for new form response.
- Connect your Typeform account.
- Select the exact form.
- Run a test so you can see the response fields Make will output.
Gotcha: If you have multiple forms, double-check the module selected the exact form. Otherwise your mappings will look right in the test, but never match production triggers.
3) Add the ClickUp “Create Task” action
- Add module: ClickUp.
- Choose action: Create Task.
- Connect your ClickUp account.
- Select the correct target Space/Folder/List.
- Map fields.
Recommended mapping approach
- Task name: Map to a Typeform answer that uniquely identifies the task, for example
Question: What is the task title?→ ClickUp name. - Description: Build a readable block from multiple Typeform answers, for example:
- Requester: {Typeform answer}
- Department: {Typeform answer}
- Responses:
- Q1: {answer}
- Q2: {answer}
- Due date: Map a Typeform date/time answer → ClickUp due_date.
- Status / Priority / Assignee: Map only if you can reliably translate Typeform values into ClickUp values.
- Custom fields: Map Typeform answers into ClickUp custom fields (for example Request Type, Project Code, Channel).
Gotcha: ClickUp integrations are sensitive to field selection. If Make shows you IDs or distinct field selectors, use those. Avoid mapping based on label text alone.
4) Handle optional or missing answers before Create Task
This is where most “it worked once” automations die.
- Add a filter or router step between the Typeform trigger and the ClickUp Create Task module.
- Base the logic on the fields that can be blank, usually:
- due date
- assignee
- priority
- one or more custom fields
- In the branch where fields are missing:
- leave the ClickUp field blank, or
- set a safe default (for example Status =
New, Priority =Normal).
Make a deliberate call here, do not just hope defaults match what your team expects.
5) Format a single Slack message payload
- Add a small formatting step (or just compose variables) before the Slack module.
- Create consistent variables such as:
task_nametask_url(from the ClickUp Create Task output)due_daterequesterprioritydepartmentshort_summary
Why: you change mappings once, and both Slack and internal reasoning stay consistent.
6) Add the Slack module (send message)
- Add module: Slack.
- Choose action: Send a message.
- Select the channel (example:
#sales-requests). - Compose the message using your variables.
Example message structure:
- First line:
New Typeform request: {task_name} - Next lines: requester, department, due date, priority
- Final line:
Open in ClickUp: {task_url}
Gotcha: Keep it short. Put the full response details in ClickUp’s task description, not a Slack wall of text.
7) Add error visibility (so you notice failures)
Intermediate builds need operational feedback.
- If Make offers an error handler for the scenario, set up an alternate path that sends a Slack message to an alerts channel when the ClickUp create step fails.
- If you do not add this, your first signal will be “nothing arrived today,” which is too late.
8) Test properly with edge cases
Run at least these submission types:
- full submission with due date and assignee
- submission missing due date
- submission missing priority or a custom field
For each, verify:
- the ClickUp task is created in the correct List
- custom fields populate correctly
- Slack message includes the ClickUp link
9) Activate, then monitor the run history for a week
- Turn the scenario on.
- Watch run history for mapping errors or unexpected blanks.
- After a few days, compare the ClickUp task fields and the Slack message text against your expected format, then refine mappings if needed.
Real-World Business Scenario
A services team runs an intake form called “New project inquiry” in Typeform. They need every inquiry to become a ClickUp task immediately, assigned based on the request type, with a due date that matches their SLA. They also need the sales or ops team to see it instantly in Slack.
With this Make.com XPA, each Typeform response creates a ClickUp task with a structured description, and Slack posts a notification that includes the task link plus the key details. The team stops doing copy-paste admin and starts working from the task and the Slack alert.
Common Variations
-
Route Slack by request type
- Add a router before Slack using a Typeform answer like
Request type. - Post to different channels per department.
- Add a router before Slack using a Typeform answer like
-
Store identifiers for deduping and support
- Save the Typeform response ID into a ClickUp custom field.
- If you ever need to reprocess, you have a stable reference.
-
Create different task templates per form answer
- Example: if
Needs design = Yes, create tasks in a Design-specific List. - Use routers based on the answer.
- Example: if
Keep your XPA stable
You built a Typeform → ClickUp task creation workflow, with a Slack notification layer and guards for missing answers. That’s the core pattern for Cross-Platform Automation (XPA) that you can extend to more forms and more workflows.
If you want field-by-field mapping help for your exact Typeform questions and ClickUp custom fields, Olmec Dynamics builds these XPAs end-to-end. You can see how we approach cross-platform automation work and then talk to us about your setup.