Hướng dẫn Google Sheets

Tự Động Hóa Marketing Email & SMS Với Google Sheets [2026]

Tuân HoangTuân Hoang
17 tháng 2, 2026
Cập nhật: 25 tháng 3, 2026
13 phút đọc
Tự Động Hóa Marketing Email & SMS Với Google Sheets [2026]

Tự Động Hóa Marketing Với Google Sheets: Email & SMS Campaign

Gửi email marketing cá nhân hóa cho 500 khách hàng chỉ mất 5 phút thay vì 5 giờ — với Google Sheets và Apps Script. Bài này hướng dẫn mail merge, segmentation và automated campaigns.

Mail Merge: Gửi Email Cá Nhân Hóa Hàng Loạt

Mail merge là kỹ thuật gửi email với nội dung được tùy chỉnh theo từng người nhận (tên, sản phẩm yêu thích, số lần mua...):

function mailMerge() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName('Khách hàng');
  var data = sheet.getDataRange().getValues();

  // Template email
  var subject = '🎁 {{TenKH}} ơi, chúng tôi có quà cho bạn!';
  var bodyTemplate = 'Xin chào {{TenKH}},\n\n' +
    'Cảm ơn bạn đã mua {{SoLanMua}} lần tại SheetStore!\n\n' +
    'Như một lời cảm ơn đặc biệt, chúng tôi tặng bạn mã giảm giá 15%: {{MaGiamGia}}\n\n' +
    'Mã hết hạn vào {{NgayHetHan}}.\n\n' +
    'Mua ngay tại: https://sheet.com.vn\n\n' +
    'Trân trọng,\nTeam SheetStore';

  for (var i = 1; i < data.length; i++) {
    var tenKH = data[i][0];
    var email = data[i][2];
    var soLanMua = data[i][5];
    var maGiamGia = 'THANKS' + tenKH.replace(/\s/g,'').toUpperCase().substring(0,3) + soLanMua;

    // Chỉ gửi cho KH đã mua ít nhất 2 lần
    if (soLanMua >= 2 && email) {
      var personalSubject = subject.replace('{{TenKH}}', tenKH);
      var personalBody = bodyTemplate
        .replace(/{{TenKH}}/g, tenKH)
        .replace('{{SoLanMua}}', soLanMua)
        .replace('{{MaGiamGia}}', maGiamGia)
        .replace('{{NgayHetHan}}', new Date(Date.now() + 7*24*60*60*1000).toLocaleDateString('vi-VN'));

      GmailApp.sendEmail(email, personalSubject, personalBody);

      // Ghi log vào sheet
      sheet.getRange(i+1, 10).setValue('Đã gửi ' + new Date().toLocaleDateString('vi-VN'));
      Utilities.sleep(1000);  // Tránh vượt quota Gmail
    }
  }
  Logger.log('Mail merge hoàn thành!');
}

Segmentation: Gửi Email Đúng Người, Đúng Thông Điệp

Segment 1: Khách VIP (Mua > 10 lần)

Thông điệp: Ưu tiên xem hàng mới trước, giảm giá 20%, early access.

=FILTER(KhachHang!A:H, KhachHang!F:F>=10)

Segment 2: Khách "Ngủ quên" (Không mua > 60 ngày)

Thông điệp: Win-back campaign, "Chúng tôi nhớ bạn!", mã giảm giá đặc biệt.

=FILTER(KhachHang!A:H, TODAY()-KhachHang!H:H>60)

Segment 3: Sinh Nhật Tháng Này

Thông điệp: Chúc mừng sinh nhật, quà tặng đặc biệt.

=FILTER(KhachHang!A:H, MONTH(KhachHang!D:D)=MONTH(TODAY()))

Automated Welcome Email Cho Khách Mới

Dùng Google Form + Sheets + Trigger:

// Trigger: onFormSubmit — chạy mỗi khi có khách đăng ký
function welcomeEmail(e) {
  var tenKH = e.values[1];    // Tên từ form
  var email = e.values[2];    // Email từ form

  var subject = '🎉 Chào mừng ' + tenKH + ' đến với SheetStore!';
  var htmlBody = '
' + '

Xin chào ' + tenKH + '!

' + '

Cảm ơn bạn đã đăng ký. Dưới đây là những gì bạn nhận được:

' + '
    ' + '
  • ✅ Trial 14 ngày miễn phí
  • ' + '
  • ✅ Hướng dẫn setup trong 30 phút
  • ' + '
  • ✅ Hỗ trợ 1:1 từ team chúng tôi
  • ' + '
' + 'Bắt Đầu Ngay' + '
'; GmailApp.sendEmail(email, subject, '', { htmlBody: htmlBody }); }

Tracking Campaign Performance

Thêm cột tracking vào sheet sau khi gửi email:

MetricCách theo dõi
SentGhi timestamp khi gửi xong
Open RateTracking pixel trong HTML email (1x1 img)
Click RateDùng UTM link, xem trong Google Analytics
ConversionSo sánh ngày mua sau ngày gửi email
UnsubscribeSheet riêng, không gửi cho danh sách này

Giới Hạn Gmail & Cách Xử Lý

Giới hạn Gmail thông thường: 100 email/ngày

Fix: Dùng Google Workspace (500/ngày) hoặc chia thành nhiều batch

Giới hạn Google Workspace: 2.000 email/ngày

Đủ cho most SME. Nếu cần hơn, dùng SendGrid/Mailchimp API

Trick: Thêm Utilities.sleep(1000) giữa mỗi email để tránh bị Gmail throttle

Kết Nối SMS Với Twilio API

function guiSMS(soDienThoai, noiDung) {
  var accountSid = 'YOUR_TWILIO_ACCOUNT_SID';
  var authToken = 'YOUR_TWILIO_AUTH_TOKEN';
  var fromNumber = '+1234567890';  // Twilio number

  var url = 'https://api.twilio.com/2010-04-01/Accounts/' + accountSid + '/Messages.json';
  var payload = {
    'To': '+84' + soDienThoai.replace(/^0/, ''),
    'From': fromNumber,
    'Body': noiDung
  };

  var options = {
    'method': 'post',
    'payload': payload,
    'headers': {
      'Authorization': 'Basic ' + Utilities.base64Encode(accountSid + ':' + authToken)
    }
  };

  UrlFetchApp.fetch(url, options);
}

Chi phí Twilio: ~0.01 USD/SMS (≈250 VND). Phù hợp cho OTP, nhắc đơn hàng, cảnh báo tồn kho.

SheetStore: Marketing Automation Tích Hợp Sẵn

Không cần viết script — SheetStore có email automation, SMS campaign và loyalty program tích hợp. Segment khách hàng dựa trên hành vi mua hàng thực tế.

Xem Tính Năng Marketing

Chia sẻ bài viết:

Tuân Hoang

Tuân Hoang

Đội ngũ SheetStore

Bạn thấy bài viết hữu ích?

Đăng ký nhận thông báo khi có bài viết mới.

Nhận thông báo khi có bài viết mới. Không spam, hứa luôn! 😊

Bình luận (0)

Vui lòng đăng nhập để tham gia thảo luận