Tự Động Hóa Marketing Email & SMS Với Google Sheets [2026]
![Tự Động Hóa Marketing Email & SMS Với Google Sheets [2026]](/images/blog/google-sheets-tu-dong-hoa-marketing-email-sms.png)
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.
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.
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.
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:
| Metric | Cách theo dõi |
|---|---|
| Sent | Ghi timestamp khi gửi xong |
| Open Rate | Tracking pixel trong HTML email (1x1 img) |
| Click Rate | Dùng UTM link, xem trong Google Analytics |
| Conversion | So sánh ngày mua sau ngày gửi email |
| Unsubscribe | Sheet 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 MarketingChia sẻ bài viết:
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.