AiTechWorlds
AiTechWorlds
Make is a visual automation platform that connects apps and services without code. Where Zapier is linear (trigger → step → action), Make is a full workflow builder with branching, loops, error handling, and complex data transformation. Combined with AI tools, it enables automation workflows that would otherwise require custom development.
Both tools connect apps without code. The practical differences matter:
Make: Visual flow builder, complex branching logic, loops, error paths, aggregators, iterators. Better for complex multi-step workflows. More affordable at scale. Steeper initial learning curve.
Zapier: Linear workflows only (though multi-step). Larger app library. Much easier to start. More expensive per task at scale.
When to choose Make:
Every step in Make is a "module" — a specific action from a specific app:
A complete workflow is called a "scenario." Scenarios run when triggered, on a schedule, or via webhook.
Between modules, you map data — taking output from one module and passing it to the next. Make has a formula language for transforming values:
{{formatDate(1.date; "YYYY-MM-DD")}} — format a date
{{lower(1.email)}} — lowercase a string
{{if(1.status = "active"; "Yes"; "No")}} — conditional value
{{parseJSON(1.raw_data)}} — parse JSON string
https://api.openai.com/v1/chat/completionsAuthorization: Bearer {{api_key}}{
"model": "gpt-4o",
"messages": [
{"role": "system", "content": "You are a professional business writer."},
{"role": "user", "content": "{{your_dynamic_prompt}}"}
],
"max_tokens": 1000,
"temperature": 0.7
}
The response contains choices[0].message.content — map this to your next module.
Trigger: New Google Form submission (content request) Step 1: ChatGPT generates the draft based on the brief Step 2: Route based on content type
Trigger: New lead added to HubSpot (or form submission) Step 1: Search for company on Clearbit/Apollo (enrich lead data) Step 2: Send to ChatGPT:
Based on this company profile, write:
1. A personalized first-touch email (3 sentences, our product is [X])
2. The best talking points for a sales call with this company
3. Priority: high/medium/low with one-sentence reasoning
Company: {{company_name}}
Industry: {{industry}}
Size: {{employee_count}}
Revenue: {{revenue}}
Tech stack: {{technologies}}
Step 3: Parse the JSON response Step 4: Update HubSpot deal with personalized email draft and call notes Step 5: If priority = high → notify sales team in Slack immediately
Trigger: New row in Google Sheets (weekly export from Intercom/Zendesk) Step 1: Iterator — process each feedback row individually Step 2: ChatGPT analysis per ticket:
{"category": "billing|technical|feature|other",
"sentiment": "positive|neutral|negative",
"priority": "urgent|high|medium|low",
"key_issue": "one sentence summary",
"feature_request": "specific feature request or null"}
Step 3: Aggregator — collect all classified items Step 4: Google Sheets — write results back to analysis tab Step 5: Filter for feature_requests that are not null Step 6: Append to a "Feature Requests" sheet with de-duplication check
Trigger: New user created in your database (webhook from your app) Step 1: Wait module — delay until next business day Step 2: Fetch user's industry and role from your database (HTTP request to your API) Step 3: ChatGPT generates personalized onboarding email:
Write a personalized day-1 onboarding email for a new user.
User: {{name}}
Company: {{company}}
Role: {{role}}
Industry: {{industry}}
Our product: [your product description]
Email should:
- Reference their specific role/industry
- Highlight the 2-3 features most relevant to their use case
- Invite them to a quick setup call
- Be under 150 words, conversational, signed by [founder name]
Step 4: Create draft in Gmail or send via email API
Make lets you add error handlers to modules:
For AI workflows: add error handlers on the ChatGPT call to catch API errors, rate limits, or malformed JSON responses. Route failures to a "manual review" path rather than silently failing.
ChatGPT returns unstructured text by default. For automation, you need structured data:
In your prompt: Always request JSON output and specify the exact schema:
Return ONLY valid JSON matching this exact structure, no markdown:
{
"category": "string",
"priority": "high|medium|low",
"summary": "string"
}
In Make: Use the parseJSON function to extract fields from the response:
{{parseJSON(1.choices[0].message.content).category}}
Or add a JSON Parse module if the structure is complex.
Free tier (1,000 operations/month, 2 active scenarios). Core ($9/month): 10,000 ops. Pro ($16/month): 10,000 ops + advanced features. Business for teams.
Operations = each module execution. A 5-module scenario run = 5 operations.
Next lesson: Zapier AI workflows — building AI-powered automations with the world's largest app connector.
Get this course's notes on Telegram!
Free cheat sheets, summaries & practice exercises