Vibe Coding  

Send Birthday Emails with Gmail + Google Sheets

🎯 Why This Automation?

Forgetting birthdays can be awkward — especially when it’s your clients, students, friends, or team members. Manual reminders and typing out emails every time is tedious and easy to forget.

With Make.com, you can fully automate birthday emails using Gmail + Google Sheets.

  • Free: Uses only free tools.

  • Personalized: Each recipient gets a message with their name.

  • Hands-off: Once set up, it runs automatically in the background.

🛠 What You’ll Need

  • Make.com account (Free plan is enough)

  • Google Sheets (For storing birthday data)

  • Gmail account (For sending emails)

📋 Step 1: Create Your Birthday Google Sheet

Create a sheet called "Birthday List" with these columns:

Name Email Birthday Message
Riya Sharma [email protected] 08-15 Wishing you a fantastic year ahead! 🎉
Amit Verma [email protected] 09-10 Happy Birthday, Amit! Hope you have a great one
Sneha Kapoor [email protected] 12-25 Merry Christmas and Happy Birthday, Sneha! 🎂

Tips:

  • Format birthdays as MM-DD (so you can ignore the year).

  • Add a personal message column for extra warmth.

Step 2: Plan the Automation Workflow

Here’s the logic:

  1. Trigger → Google Sheets checks if today’s date matches any birthday.

  2. Condition → If yes, send an email via Gmail.

  3. Action → Log “Birthday Email Sent” in the sheet (optional).

🖥 Step 3: Build the Make.com Scenario

  1. Module 1 – Google Sheets: Search Rows

    • Connect your Google Sheets account.

    • Search for rows where Birthday = TODAY().

  2. Module 2 – Gmail: Send an Email

    • To: {{Email}} from the sheet

    • Subject: "Happy Birthday, {{Name}} 🎉"

    • Body: "Hi {{Name}}, {{Message}} - [Your Name]"

  3. Module 3 – Google Sheets: Update Row (Optional)

    • Add a column “Status” → Update with “Sent”

🧩 Sample Make.com JSON for This Scenario

You can import this in Make.com to get started faster:

{
  "name": "Send Birthday Emails",
  "flow": [
    {
      "id": 1,
      "module": "google-sheets:searchRows",
      "version": 1,
      "parameters": {
        "spreadsheetId": "your_sheet_id",
        "sheetId": "your_sheet_gid",
        "filter": "Birthday = TODAY()",
        "limit": 10
      },
      "mapper": {}
    },
    {
      "id": 2,
      "module": "gmail:sendEmail",
      "version": 1,
      "parameters": {
        "to": "{{1.Email}}",
        "subject": "Happy Birthday, {{1.Name}} 🎉",
        "contentType": "text/html",
        "body": "Hi {{1.Name}},<br><br>{{1.Message}}<br><br>– Your Friend"
      }
    }
  ]
}

Replace:

  • your_sheet_id → From your Google Sheet URL.

  • your_sheet_gid → Tab ID from the URL.

🔄 Step 4: Set Scheduling

  • Use Make.com’s Scheduler to run the scenario daily at 9 AM.

  • This ensures birthday emails are always sent on time.

🚀 Benefits

  • No more missed birthdays.

  • Saves hours of repetitive work.

  • Works even if you’re offline.

  • Can be extended to SMS or WhatsApp with Twilio/WATI.

🌟 Pro Tips

  • Add images or GIFs in the email body for a fun touch.

  • Use conditional greetings (e.g., special lines for weekends or holidays).

  • Combine with Google Contacts API for a fully synced birthday database.

🛠 Fix – Common Issues & Solutions

  1. Emails Not Sending

    • Reconnect your Gmail module in Make.com; expired authentication tokens are common.

    • Check Gmail’s daily sending limit (500/day for free accounts).

  2. Wrong Person Gets the Email

    • Ensure column names in Google Sheets exactly match the mapped fields in Make.com (Name, Email, Message).

    • Watch out for extra spaces in header names.

  3. Birthday Date Not Matching

    • Format birthday cells as MM-DD (Text) so Google Sheets doesn’t change them into full dates.

    • Ensure the Make.com filter uses formatDate(now; "MM-DD") to compare correctly.

  4. Scenario Not Triggering

    • If using “Watch Rows” in Google Sheets, it only triggers when a new row is added. For existing rows, use Search Rows + Filter instead.

  5. Duplicate Emails Sent

    • Add a “Status” column in Google Sheets and update it to “Sent” after sending. Filter out rows where Status = Sent in Make.com.

📌 Final Thoughts

This Birthday Bot is more than just a reminder — it’s a relationship builder. Whether you’re a teacher, entrepreneur, HR manager, or just a thoughtful friend, this automation will help you stay connected effortlessly.