Branch8

香港電商品牌 Klaviyo 入門設定教學:從 Shopify 匯入名單到第一封自動化郵件

Matt Li
September 16, 2026
13 mins read
香港電商品牌 Klaviyo 入門設定教學:從 Shopify 匯入名單到第一封自動化郵件

Key Takeaways

  • 先驗證寄件網域 DKIM/SPF/DMARC,Cloudflare proxy 必須設為 DNS only
  • 不要同步 Shopify 全部顧客為已訂閱狀態,依同意基礎分三層處理
  • 電話號碼一律轉 E.164 格式,否則 Klaviyo SMS 會直接拒收
  • 第一條 Flow 做 Welcome Series 而非棄單,觸發單純、最適合驗證管線
  • 跨市場用單一 account 加 market property 分流,維護成本遠低於多帳號

想為香港或亞太電商品牌接上 Klaviyo?完整流程是:安裝官方 Shopify App、完成 OAuth 授權與歷史訂單同步、設定寄件網域的 DKIM / SPF / DMARC、匯入並清洗既有名單、建立 Signup Form,最後上線第一條 Welcome Flow。整段設定約需兩到三個工作天,其中網域驗證與名單清洗最耗時。

開始之前:需要準備哪些東西?

這份教學假設你手上有一個運作中的 Shopify 或 Shopify Plus 店舖,並希望把 email 與 SMS 的自動化交給 Klaviyo。動手前先確認以下項目齊備,可以省掉大量來回:

  1. Shopify 店舖管理員權限(Store owner 或具備 Apps 安裝權的 Staff account)。
  2. 寄件網域的 DNS 管理權——通常在 Cloudflare、GoDaddy、阿里雲或香港本地的 Hong Kong Domain Registration 服務商後台。若 DNS 由第三方代管,先確認能開 CNAME 與 TXT 記錄。
  3. 既有名單的 CSV 匯出檔,至少包含 email、訂閱來源、訂閱時間。沒有來源與時間戳的名單,建議別直接匯入(後面會說明原因)。
  4. Klaviyo 帳號。Klaviyo 官方定價頁列明免費方案上限為 250 位 profile 與每月 500 封 email,足夠做完整段測試。
  5. 一個能收信的內部測試信箱群組——最好涵蓋 Gmail、Outlook、以及客戶常用的本地信箱(香港市場仍有不少 Yahoo 與公司自建 mail server)。

如果品牌同時經營香港、台灣、新加坡三地站點,先決定架構:一個 Klaviyo account 配多個 Shopify store,還是每個市場各自獨立 account。Klaviyo 官方文件說明單一 account 可連接多個 Shopify 店舖,但 profile 會合併在同一個 list 池裡,語言與時區分流要靠 property 與 segment 處理。多數跨境品牌選擇「單一 account + 市場 property」,因為跨市場的顧客旅程(例如香港客人到台灣官網下單)才不會被切斷。

第一步:安裝 Klaviyo 的 Shopify 整合

在 Shopify App Store 搜尋 Klaviyo 官方 App(發行者為 Klaviyo, Inc.),點 Install 後會跳轉到 Klaviyo 進行 OAuth 授權。授權範圍包括讀取 customers、orders、products、checkouts 與 carts。

授權完成後,Klaviyo 會進入 Integrations → Shopify 設定頁,這裡有三個選項必須人工決定,不要照預設一路按下去:

是否同步歷史資料

Klaviyo 預設會回補過去的訂單與顧客資料。對於營運三年以上的店舖,這個 backfill 可能跑上數小時到一天。建議開啟——歷史訂單是之後做 RFM 分群、預測下次下單日(Predictive Analytics)的基礎。Klaviyo 官方文件指出,其 CLV 與下次購買預測需要至少約 180 天的訂單資料才會產生可用輸出。

是否訂閱所有既有 Shopify 顧客

請關掉這一項。 Shopify 的 accepts_marketing 欄位在不同版本與不同結帳流程下的語意並不一致,尤其是舊店舖從 Checkout 1.0 遷移過來的資料。把全部顧客當作已同意訂閱直接推進 Klaviyo,等同於在未確認同意基礎的情況下大量發信,既容易踩到香港《個人資料(私隱)條例》第 35 條關於直接促銷的同意要求,也會讓初期 sending reputation 直接崩掉。正確做法是只同步 profile(可以有資料),但訂閱狀態另外處理。

Onsite tracking 是否開啟

開啟。Klaviyo 的 klaviyo.js 會透過 Shopify 的 App Embed 注入,追蹤 Viewed Product、Added to Cart 等事件。在 Shopify Admin → Online Store → Themes → Customize → App embeds,確認「Klaviyo onsite javascript」是 Enabled 狀態。

驗證是否安裝成功,最快的方法是在店舖前台打開 browser console:

1// 在任一商品頁的 console 執行
2window._learnq
3// 預期輸出:一個 array-like 物件,而非 undefined
4
5// 檢查 public API key 是否正確掛上
6window.klaviyo.isIdentified()
7// 未登入訪客預期回傳 false;已識別訪客回傳 true

_learnq 回傳 undefined,通常是 App embed 沒啟用,或者 theme 有自訂的 script defer 邏輯把它擋掉了。

Ready to Transform Your Ecommerce Operations?

Branch8 specializes in ecommerce platform implementation and AI-powered automation solutions. Contact us today to discuss your ecommerce automation strategy.

第二步:設定寄件網域與驗證記錄

這是整個流程中最容易被跳過、也最容易在三個月後出事的一步。Klaviyo 預設會用共享寄件網域(send.klaviyo.com 之類)幫你發信,這意味著你的送達率與其他不認識的品牌綁在一起。

在 Klaviyo 進入 Settings → Domains → Add a sending domain,輸入你要用的子網域,建議格式為 mail.yourbrand.comsend.yourbrand.com,不要直接用主網域。Klaviyo 會產出 4 筆 CNAME 記錄,例如:

1Type Host Value
2CNAME kl._domainkey.mail dkim.klaviyomail.com
3CNAME kl2._domainkey.mail dkim2.klaviyomail.com
4CNAME mail sendingservice.klaviyomail.com
5CNAME _dmarc.mail dmarc.klaviyomail.com

(實際 host 與 value 以你帳號內產生的為準,不要照抄。)

在 Cloudflare 加這些記錄時,務必把 Proxy status 設為 DNS only(灰雲)。開啟橘雲 proxy 會讓 DKIM 查詢回傳 Cloudflare 的 IP 而非正確的 CNAME 目標,Klaviyo 的驗證會一直卡在 pending。這是我們在多個亞太品牌交接專案裡最常見的單一設定錯誤。

接著檢查主網域層級的 DMARC。Google 與 Yahoo 自 2024 年起對每日發送超過 5,000 封的寄件者要求具備 DMARC 記錄、SPF/DKIM 對齊,以及一鍵退訂——這項要求載於 Google Workspace 的 Email sender guidelines 官方文件。用 dig 驗證:

1# 檢查 DMARC 是否存在
2dig +short TXT _dmarc.yourbrand.com
3# 預期輸出範例:
4# "v=DMARC1; p=none; rua=mailto:[email protected]"
5
6# 檢查 DKIM CNAME 是否正確指向
7dig +short CNAME kl._domainkey.mail.yourbrand.com
8# 預期輸出:dkim.klaviyomail.com.

若你的品牌剛開始做 email,p=none 是合理起點,先收 aggregate report 觀察一到兩個月,確認所有合法寄件來源(Klaviyo、Shopify 交易信、客服系統、ERP 通知)都通過對齊後,再往 p=quarantine 收緊。DNS 記錄的傳播時間通常在 15 分鐘到 4 小時之間,Klaviyo 後台點 Verify 若失敗,先等半小時再試,不要反覆刪改記錄。

第三步:如何安全地匯入既有名單?

跨境品牌最常見的情境是:名單分散在舊的 Mailchimp、Shopify 內建 marketing、線下門店登記表、以及某位同事的 Excel 檔。直接全部合併上傳是災難的開始。

先做名單分層

把 CSV 依「同意基礎的強度」分成三層:

  • A 層——有明確訂閱記錄:有 opt-in 時間戳、來源頁面或 double opt-in 確認。這層可以直接以 subscribed 狀態匯入。
  • B 層——有交易關係但無明確訂閱:曾下單的顧客,但訂閱同意不明確。這層匯入為 profile,訂閱狀態留空,之後透過站內表單或一封單獨的 re-permission 請求重新取得同意。
  • C 層——來源不明:展會抽獎、購買名單、無時間戳的舊檔。直接捨棄。這層名單的 hard bounce 與 spam complaint 會拖垮整個 sending domain,救回來的成本遠高於名單價值。

香港個人資料私隱專員公署(PCPD)發布的直接促銷指引明確要求,在使用個人資料作直接促銷前須取得資料當事人的同意,並提供不收費的拒絕途徑。新加坡的 PDPA 與台灣的《個人資料保護法》在行銷同意上也採類似邏輯,跨境營運時以最嚴格的一地為共同標準最省事。

CSV 欄位格式

Klaviyo 的匯入接受以下標準欄位,建議先在本機整理好:

1email,first_name,last_name,phone_number,$consent,$consent_timestamp,market,signup_source
2[email protected],Ka Ming,Chan,+85291234567,email,2024-11-03T09:12:00Z,HK,popup_2024_q4
3[email protected],Wei,Lee,+886912345678,email,2025-02-18T14:30:00Z,TW,checkout

幾個要點:

  • 電話號碼一律用 E.164 格式(+852+886+65+61 開頭)。Klaviyo 的 SMS 功能對非 E.164 格式會直接拒收。香港號碼常見的 9123 4567 寫法必須批次補上國碼並移除空格。
  • $consent_timestamp 用 ISO 8601 UTC。之後若遇到申訴或審查,這是你唯一的舉證依據。
  • market 這類自訂 property 在匯入時就加好,比事後補分群省事得多。

用一行 Python 快速把香港號碼標準化:

1import re
2
3def to_e164_hk(raw: str) -> str | None:
4 digits = re.sub(r"\D", "", raw or "")
5 if digits.startswith("852") and len(digits) == 11:
6 return f"+{digits}"
7 if len(digits) == 8 and digits[0] in "2356789":
8 return f"+852{digits}"
9 return None # 交給人工處理,不要猜
10
11print(to_e164_hk("9123 4567")) # +85291234567
12print(to_e164_hk("(852)6111-2222")) # +85261112222
13print(to_e164_hk("12345")) # None

執行匯入

在 Klaviyo 進入 Audience → Lists & Segments → Create List,先建立一個名為 Legacy Import – A Tier 的 list,再用 Import 功能上傳 CSV。上傳時 Klaviyo 會要求你勾選確認這些聯絡人確實同意接收行銷訊息——這個勾選框不是形式,它對應的是你帳號的合規責任。

匯入後檢查 Klaviyo 的 Deliverability 分頁。若你一次匯入超過一萬筆從未發過信的名單,不要立刻全量發送。業界標準做法是 IP / domain warm-up:第一天發給最近 30 天有互動的 500–1,000 人,之後每兩到三天翻倍,並在每個階段觀察 bounce rate 是否低於 2%、spam complaint 是否低於 0.1%(Google Postmaster Tools 的建議上限為 0.3%,但實務上超過 0.1% 就該停下來檢查)。

Ready to Transform Your Ecommerce Operations?

Branch8 specializes in ecommerce platform implementation and AI-powered automation solutions. Contact us today to discuss your ecommerce automation strategy.

第四步:建立 Signup Form 並定義觸發事件

沒有持續進來的新名單,自動化流程就是一台空轉的機器。

在 Klaviyo Signup Forms → Create Form,選擇 Popup 或 Embed。對香港與台灣市場的幾個實務建議:

  • 語言切換:Klaviyo 的 form 本身不支援自動多語。若站點有 /zh-hk/zh-tw/en 路徑,建立三個 form,各自用 Targeting → Show on specific pages 的 URL contains 條件分流。
  • 顯示時機:預設的「立即顯示」在行動裝置上退出率高。改成 scroll 30% 或停留 8 秒後觸發。Baymard Institute 的研究指出,干擾性彈窗是行動裝置上常見的體驗問題之一,時機控制比文案更影響完成率。
  • 收集 phone 時要分開同意:email 與 SMS 的同意在多數司法管轄區必須分別取得,Klaviyo 的 form builder 提供獨立的 SMS consent checkbox,要開。
  • 表單欄位愈少愈好:第一步只要 email;拿到 email 之後用第二步(Klaviyo form 支援 multi-step)再問生日或偏好品類。

如果你要在自訂頁面上手動觸發 identify,可以直接呼叫 Klaviyo 的 JS API:

1// 在自建的訂閱區塊提交後呼叫
2klaviyo.push(["identify", {
3 "$email": userEmail,
4 "$first_name": userFirstName,
5 "market": "HK",
6 "preferred_language": "zh-Hant"
7}]);
8
9// 送出自訂事件,供 Flow 觸發使用
10klaviyo.push(["track", "Joined VIP Waitlist", {
11 "Collection": "Lunar New Year 2026",
12 "Value": 0
13}]);

注意:identify 只建立 profile,不等於訂閱。要真正把人加進行銷訂閱狀態,須使用 Klaviyo 的 Subscribe API 或官方 form,並帶上同意資訊。

第五步:上線第一封自動化郵件(Welcome Flow)

終於到重點。第一條 flow 建議做 Welcome Series,而不是 abandoned cart——因為 welcome 的觸發條件單純、風險低,是驗證整條管線是否通暢的最佳測試。

Flow 結構

Flows → Create Flow → Build your own,選 Trigger 為 List: Newsletter(即你的 form 送進的那個 list)。

建議的三封結構:

  1. Email 1 — 立即發送:兌現 form 上承諾的優惠碼,並說明品牌是誰、多久發一次信。這封的開信率通常是整個帳號最高的,別浪費在純圖片 banner 上。
  2. Delay 2 天 → Email 2:品牌故事或最佳銷售商品。加一個 conditional split:Has placed order since starting this flow = true 的人跳過促銷內容,改送使用指南。
  3. Delay 3 天 → Email 3:社群證明(評論、UGC)+ 優惠碼到期提醒。

Smart Sending 與時區處理

跨市場品牌一定要處理發送時區。Klaviyo 的 Flow email 可設定 Smart Send Time,但更重要的是在 Flow Filter 加上:

  • Has been in this flow: zero times over all time——避免重複進入。
  • Smart Sending 預設開啟(16 小時內收過信的人跳過),保留它。

如果香港、台灣、澳洲三個市場共用一個 flow,用 Conditional Split 依 market property 分岔到不同語言的 email 版本,而不是建三條獨立 flow。前者的維護成本低得多——改一次 flow logic,三個市場同步生效。澳洲與港台之間有 2–3 小時時差,Klaviyo 的 time delay 支援「僅在特定時段發送」,設成收件人當地 09:00–20:00 即可。

發送前的檢查清單

上線前逐項確認:

  1. Preview & Test 寄到至少三個不同 mail provider,檢查手機版渲染。
  2. Email 的 sender name 與 reply-to 是真實可回覆的信箱,不要用 noreply@。Gmail 的寄件者指引把可回覆性視為信譽訊號之一。
  3. 退訂連結存在且指向 Klaviyo 的 hosted preference page,不要自建。
  4. 所有連結帶 UTM。Klaviyo 在 Settings → UTM Tracking 可全域啟用,預設 utm_source=klaviyo&utm_medium=email&utm_campaign={{campaign_name}}
  5. 中文字型與行高——Klaviyo 預設模板的 line-height 對中文偏窄,建議在 template 的 text block 設為 1.7 以上。
  6. Flow 狀態從 Draft 切到 Live。這步經常被忘記,測試都過了卻沒人收到信,九成是這個原因。

Ready to Transform Your Ecommerce Operations?

Branch8 specializes in ecommerce platform implementation and AI-powered automation solutions. Contact us today to discuss your ecommerce automation strategy.

常見問題排查

網域驗證一直 pending

依序檢查:Cloudflare proxy 是否關閉(灰雲)、host 欄位是否被 DNS 供應商自動補上網域後綴造成 kl._domainkey.mail.yourbrand.com.yourbrand.com、以及是否有既存的衝突 CNAME。用 dig 從外部確認,別只信 DNS 後台的顯示。

Shopify 事件沒有進 Klaviyo

先在 Klaviyo 的 Analytics → MetricsPlaced Order 最近一筆的時間。若停在某個時間點,通常是 App 授權過期或 Shopify 改了 staff 權限。到 Shopify Admin → Apps → Klaviyo 重新授權即可。Checkout Extensibility 遷移後的店舖,還要確認 Klaviyo 的 checkout pixel 有在 Customer Events 註冊。

開信率異常低於 15%

三個常見原因:名單裡混了 B/C 層未清洗資料;寄件網域未驗證,信被歸到促銷分頁甚至垃圾郵件;或是 Apple Mail Privacy Protection 造成的統計失真(自 2021 年起 Apple 預載圖片,會虛增而非壓低開信率——所以若你的數字偏低,前兩項的可能性更大)。優先看 Klaviyo Deliverability 分頁的 bounce 與 complaint,而非開信率本身。

匯入後 profile 數量對不上

Klaviyo 以 email 為主鍵去重。若 CSV 內有大小寫不一致或前後空白的 email,匯入前先 normalize:

1# 快速清洗:轉小寫、去空白、去重
2awk -F',' 'NR==1{print; next} {gsub(/^ +| +$/,"",$1); print tolower($1)","substr($0, index($0,",")+1)}' raw.csv \
3 | sort -u -t',' -k1,1 > clean.csv

跨境營運的架構建議

我們在為一家在香港與台灣同時營運 Shopify Plus 站點的服飾品牌做 marketing stack 整併時,遇到的核心問題不是 Klaviyo 本身,而是兩地各自累積了不同的顧客識別邏輯——香港站用 email 為主鍵,台灣站大量顧客只留手機號。合併進單一 Klaviyo account 前,必須先在中介層(當時用的是一組 Node.js 腳本搭配 Klaviyo API v2024-10-15)決定 identity resolution 規則,否則同一個人會變成兩個 profile,flow 會發兩次。

這類跨市場整併的難度通常不在工具,而在於誰有能力同時讀懂三地的資料習慣、法規要求與語言慣例。把團隊放在亞太時區的實際好處是:香港、台灣、新加坡的營運窗口在同一個工作日內,澳洲只差兩到三小時,歐美品牌若把 APAC 的 lifecycle marketing 交給區內團隊,等於用當地作息覆蓋當地市場,而不是隔夜等回覆。

接下來該做什麼

Welcome Flow 穩定跑滿兩週後,依這個順序擴充:

  1. Abandoned Checkout(價值最高,但要處理好 Shopify 的 checkout token 與 Klaviyo 的 Started Checkout 事件對應)
  2. Browse Abandonment(依賴 onsite tracking 品質)
  3. Post-Purchase(物流查詢 + 交叉銷售,亞太跨境運送時效差異大,delay 天數要按市場分)
  4. Winback / Sunset Flow(把 180 天無互動的人移出主要發送名單,這是保護送達率的關鍵,不是可有可無的選項)

Branch8 在香港、新加坡、台灣、澳洲等市場為 Shopify Plus 與 SHOPLINE 品牌建置與整併 lifecycle marketing 架構,涵蓋資料遷移、送達率修復與跨市場 flow 設計。如果你的品牌正準備把多地名單整併到同一套自動化系統,與我們的團隊談談你目前的資料狀況。

Ready to Transform Your Ecommerce Operations?

Branch8 specializes in ecommerce platform implementation and AI-powered automation solutions. Contact us today to discuss your ecommerce automation strategy.

Sources

FAQ

Shopify 內建工具適合單次群發與最基本的棄單提醒,但分群條件、多步驟 flow、條件分岔與預測分析都相當有限。Klaviyo 的價值在於以事件資料驅動的自動化流程與跨市場 property 分群,代價是額外訂閱費與較長的設定時間。若你的月訂單量還在數百筆以下,先用 Shopify 內建也合理。

About the Author

Matt Li

Co-Founder & CEO, Branch8 & Second Talent

Matt Li is Co-Founder and CEO of Branch8, a Y Combinator-backed (S15) Adobe Solution Partner and e-commerce consultancy headquartered in Hong Kong, and Co-Founder of Second Talent, a global tech hiring platform ranked #1 in Global Hiring on G2. With 12 years of experience in e-commerce strategy, platform implementation, and digital operations, he has led delivery of Adobe Commerce Cloud projects for enterprise clients including Chow Sang Sang, HomePlus (HKBN), Maxim's, Hong Kong International Airport, Hotai/Toyota, and Evisu. Prior to founding Branch8, Matt served as Vice President of Mid-Market Enterprises at HSBC. He serves as Vice Chairman of the Hong Kong E-Commerce Business Association (HKEBA). A self-taught software engineer, Matt graduated from the University of Toronto with a Bachelor of Commerce in Finance and Economics.