← Blog Automation

Dựng dashboard marketing từ file Excel bằng Claude trong 20 phút

Dựng dashboard marketing từ file Excel bằng Claude Code trong 20 phút: gom CSV, đưa dữ liệu lên trang trước, 5 bản thiết kế chạy song song.

Bởi · Nhà sáng lập AI 5 Phút, CEO MediaX AI

Dựng dashboard marketing từ file Excel bằng Claude trong 20 phút

Ai làm marketing cũng từng cần một bảng điều khiển, và hầu hết làm sai ngay từ câu lệnh đầu tiên.

Cách phổ biến nhất: gom hết số liệu, thả vào AI, gõ "vẽ biểu đồ giúp tôi". Ra được một trang có vài ô số, vài biểu đồ màu xanh mặc định, chữ nhỏ, xếp lung tung. Nhìn được. Nhưng không ai trong đội muốn mở nó lần thứ hai. Mình gọi đó là dashboard buồn.

Bài này đi theo quy trình khác: coi dashboard là một dự án thiết kế web, đưa dữ liệu lên trang trước rồi mới làm đẹp, dùng nhiều tác nhân chạy song song để có năm bản trong thời gian làm một bản, và gói cả quy trình thành skill để lần sau chỉ mất khoảng 20 phút máy chạy. Đây là hệ thống thứ ba trong cụm bài Claude Code cho marketer không biết code.

Dashboard là trang web, không phải "đổ số vào rồi vẽ"

Vấn đề không phải AI yếu. Vấn đề là bạn đang coi nó như công cụ vẽ biểu đồ, trong khi bản chất dashboard ngày nay chỉ là một trang web, viết bằng HTML như mọi trang bạn vào mỗi ngày. Mà đã là trang web thì nó là dự án thiết kế: có bố cục, có thứ tự đọc, có câu hỏi người xem cần trả lời khi mở lên.

Và vì sao phải tự làm, khi Facebook Ads có báo cáo riêng, YouTube có Studio riêng, Google Analytics có trang riêng? Vì đúng chỗ đó. Mỗi nền tảng một nơi. Chi phí quảng cáo một chỗ, lead một chỗ, doanh thu một chỗ, khách tư vấn một chỗ. Ở MediaX bọn mình từng có hẳn "ngày làm báo cáo" cuối tháng: cả đội ngồi xuất số từ năm sáu chỗ, dán vào slide, chỉnh cho đẹp gửi khách. Mất cả ngày. Dashboard tự làm là để bỏ cái ngày đó.

Ba chặng, và model đắt làm gì, model rẻ làm gì

Quy trình có ba chặng. Chặng một: gom dữ liệu về một thư mục. Chặng hai: đưa dữ liệu lên trang, chưa cần đẹp, chỉ cần đúng số đúng chỗ. Chặng ba mới là làm đẹp, và làm đẹp theo kiểu chọn lọc: từ khung sinh ra bản A, B, C, bạn thích B thì từ B sinh tiếp bốn bản, cứ thế. Ba vòng là bạn có bản đẹp nhất trong hàng chục bản mà không phải tự vẽ bản nào. Đây là chọn, không phải vẽ.

Về model: với quảng cáo, email, form thì Sonnet là đủ. Nhưng thiết kế là việc khác, nhu cầu càng khó thì model càng phải thông minh. Nên bài này dùng hai model cho hai việc. Model đắt, Opus, để suy nghĩ cấu trúc và dựng khung, việc chỉ làm một lần. Rồi quay về model rẻ, Sonnet, để từ khung sinh ra thật nhiều biến thể, việc lặp đi lặp lại. Đắt dựng khung, rẻ sinh biến thể. Câu này tiết kiệm cho bạn rất nhiều giới hạn.

Bước 1: gom dữ liệu và viết một trang mô tả

Bọn mình không đưa số thật của MediaX và khách hàng lên bài hướng dẫn, nên đã nhờ Claude tạo một bộ dữ liệu giả có hình dáng y hệt dữ liệu thật, để trong thư mục "du-lieu-dashboard". Bạn làm theo thì thay bằng file xuất từ hệ thống của bạn.

Bộ này có 11 file CSV, nôm na là file Excel bỏ hết định dạng, chỉ còn bảng: danh mục kênh; chi phí quảng cáo theo ngày và kênh; lead theo ngày; danh sách khách hàng SME với ngành, tỉnh, ngày ký, giá trị hợp đồng; nhân viên tư vấn và từng hoạt động của họ gồm cuộc gọi, email, tin Zalo, kéo dài bao nhiêu giây, kết quả ra sao; doanh thu khóa học theo cổng thanh toán; số liệu Google Analytics theo ngày theo kênh; hiệu quả từng mẫu quảng cáo; kênh chạm đầu và chạm cuối của mỗi lead; và từng lần gửi email cộng đồng. Riêng file hoạt động tư vấn khoảng 30.000 dòng, cả bộ khoảng 50.000 dòng. Không phải bảng nhỏ.

Để thấy dashboard sẽ trả lời câu hỏi gì, thử lọc tay: muốn biết bạn Linh hôm qua làm gì, lọc theo ngày, theo tên, cộng cột thời lượng ra 2.940 giây, chia 60 là 49 phút. Cả ngày làm việc mà ghi nhận có 49 phút hoạt động với khách. Đó là kiểu câu hỏi dashboard sẽ trả lời tự động thay bạn ngồi lọc.

Còn một file quan trọng nhất, không phải CSV: "mo-ta.md". Một trang chữ viết bằng lời thường: file nào chứa gì, cột nào nối với cột nào, ví dụ "mã khách" trong file khách hàng trùng "mã khách" trong file hoạt động. Không có file này Claude vẫn đoán được, nhưng đoán sai một cột là sai cả dashboard. Mười phút viết mô tả, tiết kiệm một buổi chiều đi tìm vì sao số lạ.

Bước 2: cấp một, lệnh tay, xin đề xuất cấu trúc chứ chưa dựng

Mở cuộc trò chuyện mới ở tab Code, model Sonnet. Kéo thư mục dữ liệu thả vào ô lệnh, rồi gõ:

Trong thư mục du-lieu-dashboard có 11 file CSV, dữ liệu marketing và tư vấn, mình đã mô tả từng file trong mo-ta.md. Đọc hết. Với từng file, xem có gộp được với file nào khác một cách hợp lý không, nối bằng cột nào. Rồi đề xuất 2 đến 3 cấu trúc trang khác nhau cho một dashboard: mỗi cấu trúc gồm những trang nào, mỗi trang trả lời câu hỏi gì. Chưa dựng gì cả, chỉ đề xuất để mình chọn.

Để ý mình không nói "làm dashboard". Mình nói "đề xuất cấu trúc, chưa dựng". Vì đây là bước quyết định: bạn chọn bản đồ trước, rồi mới xây. Đúng nguyên tắc bạn chọn quy trình, AI làm bước giữa.

Trong lần chạy của bọn mình, nó trả về ba phương án: theo phễu gồm tổng quan, tiếp cận, website, chuyển đổi; theo khách, mỗi khách SME một trang; và theo câu hỏi kiểu "có đạt số không", "tiền đi đâu", "web có chuyển đổi không". Cả ba đều ổn. Nhưng "ổn" là từ nguy hiểm nhất khi làm thiết kế, ổn nghĩa là chưa ai nghĩ kỹ.

Bước 3: đổi model mạnh, và một câu lệnh đổi hẳn cách nó đọc

Vẫn cuộc trò chuyện đó, bấm chọn model, đổi sang Opus, mức suy nghĩ kéo lên cao. Model mới vẫn đọc được toàn bộ những gì model cũ vừa làm, chúng dùng chung một cuộc trò chuyện, nên không phải làm lại từ đầu.

Rồi gõ: "Mình vừa đổi model. Xem lại ba đề xuất trên. Giả định phân tích trước do một model kém hơn làm, cái gì hợp lý thì giữ, cái gì sai thì sửa. Chốt một cấu trúc bạn thấy đúng nhất với chính dữ liệu này và nói vì sao. Sau đó dựng khung: một trang web tự chứa, mỗi trang trong cấu trúc là một mục, đưa dữ liệu thật lên trang trước, bảng, số tổng, biểu đồ đơn giản. Chưa cần đẹp."

Câu "giả định phân tích trước do model kém hơn làm" nghe hơi phũ, nhưng nó đổi hẳn cách model đọc. Không nói câu này, nó có xu hướng gật đầu với cái có sẵn. Nói rồi, nó soi.

Và nó soi thật. Nó không chọn A, B hay C. Nó nói cấu trúc không phải chuyện sở thích, dữ liệu tự quyết định, và đưa ba lý do: hầu hết điều đáng chú ý trong bộ này gắn với từng khách, lead sụt là sụt ở khách nào, chi phí nhảy là nhảy ở khách nào, xếp theo phễu thì câu chuyện của một khách bị rải ra bốn trang; có dữ liệu chỉ tồn tại ở một phần khách, ví dụ kênh chạm chỉ phủ khoảng 44% lead, nên trang tổng theo phễu sẽ có lỗ hổng; và số liệu ở các độ chi tiết khác nhau. Nó chốt lấy khách làm trục chính: trang tổng quan, lưới khách hàng, bảng tín hiệu bất thường, mỗi khách một trang, cộng trang kênh, trang đội tư vấn.

Bọn mình gật, vì làm tư vấn cho SME thì câu đầu tiên khi mở dashboard bao giờ cũng là "khách nào đang có chuyện". Nhưng đây là chỗ bạn phải là người quyết. Nếu bạn là cửa hàng bán lẻ, trục "khách" vô nghĩa, trục phải là "sản phẩm" hay "kênh". Đọc lý do nó đưa ra, đối chiếu với câu bạn thật sự hay hỏi mỗi sáng, rồi mới gật.

Nó dựng khoảng bốn năm phút. Kết quả: một trang mộc, chữ đen nền trắng, bảng và số. Xấu. Nhưng bấm vào từng khách được, thấy lead theo ngày, lưu lượng web, ai đang phụ trách. Dữ liệu đã lên trang. Đoạn này ăn giới hạn khá đậm, gõ /usage để biết còn bao nhiêu trước khi sang bước tiếp.

Bước 4: song song hóa, 5 tác nhân con, 5 phong cách, một lần chờ

Khung xong, đổi ngược model về Sonnet. Việc suy nghĩ đã xong, giờ là việc sinh biến thể, việc lặp, đưa cho model rẻ.

Và giới thiệu một thứ mới: tác nhân con, hay subagent. Hiểu đơn giản: Claude tự sinh thêm vài Claude con, mỗi đứa nhận một việc, chạy cùng lúc, xong báo về cho Claude mẹ. Gõ:

Khung này đã ổn. Mình muốn 5 bản thiết kế khác hẳn nhau từ cùng khung này. Tạo 5 tác nhân con chạy song song, mỗi tác nhân một phong cách: tạp chí, dòng lệnh, Thụy Sĩ tối giản, bảng điều hành dày đặc, và in ấm. Giữ nguyên toàn bộ dữ liệu và phần Tín hiệu, 5 bản phải cùng tìm ra đúng những bất thường đó. Ưu tiên số một là dễ đọc, dễ dùng, phục vụ người xem là chủ doanh nghiệp. Mỗi bản lưu một thư mục riêng, v1 tới v5.

Trong lúc nó chạy, hiểu vì sao cách này đáng. Trước giờ bạn làm việc với AI theo hàng dọc: việc 1 xong, việc 2, việc 3. Mỗi việc 5 phút, bốn bản là 20 phút, và bạn chờ suốt 20 phút. Song song hóa là việc 1 xong, sinh ra 2, 3, 4, 5 cùng lúc, cả bốn xong sau 5 phút, rồi gom lại. Tổng 10 phút thay vì 20, và bạn chờ một lần thay vì bốn. Đây chính là cấp "người điều phối" trong bài 5 cấp độ dùng AI trong doanh nghiệp nhỏ: bạn duyệt kết quả, không duyệt thao tác.

Điều kiện để song song: các việc con phải độc lập. Năm bản thiết kế là ví dụ hoàn hảo, bản tạp chí không cần biết bản dòng lệnh đang làm gì. Viết một email năm đoạn thì không, đoạn hai phải nối đoạn một.

Cái được: nhanh, và nhiều lời giải để chọn. Cái mất: tốn, năm Claude con ăn giới hạn gấp nhiều lần, và mỗi đứa chạy một mình không ai canh nên tỷ lệ hỏng cao hơn. Nhưng năm bản mà một bản dùng được là bạn đã thắng. Thời gian thực tế của mỗi tác nhân con thường khoảng 8 tới 9 phút, cả năm bản xong trong khoảng 9 phút, làm lần lượt là bốn mươi mấy phút.

Một điểm tinh tế trong câu lệnh: "5 bản phải cùng tìm ra đúng những bất thường đó". Không có câu này, mỗi Claude con tự chọn số nào đáng hiện, và năm bản kể năm câu chuyện khác nhau. Có câu này, chúng khác nhau về áo, giống nhau về ruột. Bạn so được.

Bước 5: xem năm bản, chọn một, và chỗ "à ra thế"

Mở lần lượt. Bản tạp chí đẹp để gửi khách, hơi lười để dùng hằng ngày. Bản dòng lệnh nền tối, gõ tên khách là nhảy tới. Bản Thụy Sĩ trắng, lưới thẳng, mở lên thấy hết không phải bấm. Bản in ấm nền kem, sang nhưng nhiều trang trí.

Và bản dày đặc, nơi bọn mình dừng lại. Bên trái tổng quan, dưới là kênh nào đóng góp, kênh nào ăn tiền không ra gì, rồi đội tư vấn, rồi từng khách, và mục "Tín hiệu".

Mục Tín hiệu là những gì Claude tự bắt được khi số tăng hay giảm mạnh hơn bình thường. Trong bộ dữ liệu mẫu, nó ghi: một khách nha khoa tuần thứ hai tháng 3 lead sụt nghiêm trọng, trung bình 57 lead một ngày, tuần đó còn 3, cùng lúc chi phí trên một lead nhảy từ khoảng 100 nghìn lên hơn 1 triệu. Dòng tiếp: một trung tâm tiếng Anh tỷ lệ chuyển đổi tăng từ 1,65% lên 2,23%, tin tốt, đem đi khoe khách được. Dưới cùng, đội tư vấn: tỷ lệ thắng của một bạn 15,6% trong khi trung bình đội 24,2%, cứ bảy cuộc thắng một trong khi cả đội bốn cuộc thắng một. Có chuyện để nói.

Cách nó bắt không cao siêu: so số tuần này với trung bình mấy tuần trước, lệch quá ngưỡng là báo. Nhưng dừng lại một chút. Bạn không hề bảo nó tìm mấy chuyện này. Câu lệnh của bạn là "dựng dashboard". Và những con số này nằm trong file Excel của bạn từ đầu. Với mô hình cũ, ngày làm báo cáo cuối tháng, bạn phát hiện lead sụt vào ngày 31, ba tuần sau khi nó xảy ra. Khách đã mất ba tuần lead, có khi mất luôn khách.

Bạn không xây dashboard để nhìn số. Bạn xây để có một người ngồi nhìn số mỗi sáng thay bạn, và chỉ gọi bạn khi có chuyện. Đó là khác biệt giữa báo cáo và bảng điều khiển.

Một nguyên tắc mình luôn nhắc, đã viết trong bài tự động hóa cho doanh nghiệp nhỏ: phép tính phải chạy bằng công thức trên dữ liệu, AI chỉ làm phần diễn giải và chỉ ra bất thường. Dashboard làm đúng điều đó: số tổng và tỷ lệ tính từ CSV, phần Tín hiệu là diễn giải. Số do mô hình tự cộng trong đầu là số không kiểm lại được.

Bước 6: xuất bản cho đội, gói skill, và routine mỗi sáng

Gõ "xuất bản bản bốn thành trang web, chỉ người có link mới xem được". Copy link, gửi vào nhóm Zalo của đội. Ai có link mở được, cả trên điện thoại, không hosting, không tên miền, không trả thêm gì. Bạn vừa có thứ mà nhiều công ty trả vài triệu một tháng cho phần mềm báo cáo, với 50.000 dòng dữ liệu.

Giờ cấp hai. Bạn vừa nói với Claude bốn lần theo một thứ tự cố định: đọc thư mục, đề xuất cấu trúc, dựng khung, sinh biến thể. Đó là quy trình. Gõ: gói toàn bộ thành skill tên "dashboard-marketing", nhận vào một thư mục CSV có file mo-ta.md, đề xuất 2 tới 3 cấu trúc, dừng lại hỏi mình chọn, dựng khung với dữ liệu thật, rồi sinh 5 bản song song; ghi rõ bước nào dùng model nào. Mở cuộc trò chuyện mới, gõ /dashboard-marketing, chỉ vào thư mục dữ liệu của khách khác, nó chạy lại từ đầu. Tháng sau khách hỏi "cho tôi xem dashboard riêng của tôi", bạn mất khoảng 20 phút máy chạy, không phải một ngày. Đó là con số "20 phút" ở tiêu đề: lần đầu bạn sẽ mất lâu hơn để chọn cấu trúc và đọc năm bản, nhưng từ lần thứ hai quy trình đã nằm trong skill.

Cấp bốn, routine: mỗi sáng 6 giờ đọc file CSV mới nhất trong thư mục Google Drive, cập nhật lại dashboard, xuất bản lại cùng link, nếu mục Tín hiệu có dòng mới thì gửi email cho bạn. Từ đó dashboard tự mới mỗi sáng, và bạn nhận email đúng cái hôm lead sụt, không phải ngày 31.

Nếu muốn dashboard có mật khẩu riêng cho từng khách hoặc gắn tên miền của bạn, dùng thêm một dịch vụ đăng trang web tĩnh có kết nối MCP, tốn thêm khoảng 10 phút và một tài khoản. Và nếu một trong các file CSV là số liệu website, hãy tách riêng lượng khách đến từ ChatGPT, Perplexity theo cách trong bài đo traffic từ AI bằng GA4, vì đó là cột sẽ đáng xem nhất trong năm tới.

Ba lỗi gặp thật

Lỗi một: hết giới hạn giữa chừng. Năm tác nhân con ăn giới hạn rất nhanh. Chạy bước 4 lúc bắt đầu cửa sổ 5 tiếng mới, gõ /usage trước khi bấm, hoặc sinh 3 bản thay vì 5, ba là đủ để chọn.

Lỗi hai: tin cấu trúc của model. Nó nói rất thuyết phục nhưng không biết doanh nghiệp bạn. Đối chiếu với câu bạn hay hỏi mỗi sáng rồi mới gật.

Lỗi ba: bỏ qua file mô tả. Không có mo-ta.md, Claude có thể nối nhầm "ngày ký hợp đồng" với "ngày tạo lead", dashboard vẫn ra, đẹp, và sai toàn bộ chu kỳ chốt.

Bài tập nếu bạn muốn thử ngay: lấy đúng 3 file có sẵn, xuất từ Facebook Ads, danh sách khách, doanh thu, viết một trang mô tả, chạy quy trình này, gửi link cho một người trong đội và hỏi họ một câu: "mở lên bạn thấy gì đầu tiên?". Câu trả lời đó là bài học thiết kế tốt nhất bạn có được.

Dữ liệu bạn đã có từ lâu. Thứ bạn thiếu chưa bao giờ là số. Là một người ngồi nhìn số mỗi sáng thay bạn.

Câu hỏi thường gặp

Dữ liệu cần chuẩn bị ở dạng gì?

File CSV xuất từ các nền tảng bạn đang dùng, tức Excel bỏ định dạng chỉ còn bảng, gom về một thư mục. Quan trọng nhất là một trang mô tả viết bằng lời thường: file nào chứa gì, cột nào nối với cột nào. Ba file là đủ để bắt đầu: chi phí quảng cáo, danh sách khách, doanh thu.

Vì sao phải dùng hai model khác nhau?

Việc suy nghĩ cấu trúc và dựng khung khó và chỉ làm một lần, nên đáng dùng model mạnh. Việc sinh nhiều biến thể từ khung là việc lặp, dùng model rẻ để không cháy giới hạn. Đổi model ngay trong cùng cuộc trò chuyện, model mới đọc được toàn bộ những gì model cũ đã làm.

Dashboard có tự cập nhật không?

Có, khi bạn đưa lên cấp routine: mỗi sáng đọc file mới nhất trong Google Drive, dựng lại, xuất bản cùng link, và gửi email nếu mục Tín hiệu có dòng mới. Trước đó, khi đã gói thành skill, chạy lại cho một bộ dữ liệu khác mất khoảng 20 phút máy chạy.

Nếu đội bạn vẫn còn "ngày làm báo cáo" cuối tháng, đội tư vấn AI cho doanh nghiệp nhỏ của MediaX có thể xem cùng bạn ba file số liệu đang có và dựng thử bản đầu tiên để bạn thấy nó đáng hay không.

Muốn áp dụng AI vào chính công việc của bạn?

Đặt lịch tư vấn 1-1 miễn phí (30 phút, qua Zoom): kể quy trình của bạn, đội ngũ AI 5 Phút chỉ ra chỗ AI giúp được ngay và gửi trước bản phân tích sơ bộ.

Đặt lịch tư vấn miễn phí
Hoặc nhận bản tin hằng tuần · tải tài nguyên miễn phí