Schema & Structured Data

ContactPoint Schema

Schema thông tin liên hệ: số điện thoại, email, phương thức, khu vực phục vụ, giờ làm việc.

5 lượt xem Cập nhật: 30/05/2026

ContactPoint Schema là gì?

ContactPoint Schema là một loại markup cấu trúc (structured data) thuộc chuẩn schema.org, dùng để mô tả chi tiết cách người dùng có thể liên hệ với một tổ chức, doanh nghiệp hoặc cá nhân. Nó không chỉ ghi số điện thoại hay email đơn thuần, mà còn xác định rõ: phương thức liên hệ (gọi điện, email, chat…), khu vực phục vụ (quốc gia, tỉnh thành), ngôn ngữ hỗ trợ, giờ làm việc chính xác và cả tính chất của điểm liên hệ (ví dụ: hỗ trợ kỹ thuật, bán hàng, khiếu nại).

Khác với các schema như Organization hay LocalBusiness, ContactPoint tập trung vào một kênh liên hệ cụ thể. Một doanh nghiệp có thể khai báo nhiều ContactPoint — ví dụ: một cho tổng đài, một cho bộ phận CSKH tiếng Anh, một cho hỗ trợ sau bán hàng tại TP.HCM.

Tại sao quan trọng trong SEO?

ContactPoint Schema giúp công cụ tìm kiếm hiểu sâu hơn về khả năng tiếp cận và phạm vi hoạt động của doanh nghiệp. Khi được triển khai đúng, nó hỗ trợ:

  • Tăng khả năng xuất hiện trong rich result như hộp thông tin liên hệ mở rộng trên Google Search (đặc biệt trên thiết bị di động);
  • Cải thiện độ tin cậy (E-E-A-T) nhờ dữ liệu liên hệ minh bạch, nhất quán;
  • Hỗ trợ Google Maps và Google Business Profile đồng bộ thông tin — nếu dữ liệu ContactPoint khớp với hồ sơ doanh nghiệp, tỷ lệ xác minh và hiển thị địa phương tăng;
  • Giúp bot dễ dàng phân biệt giữa số tổng đài chung và số hỗ trợ kỹ thuật riêng, từ đó tối ưu trải nghiệm người dùng khi tìm kiếm theo nhu cầu cụ thể (ví dụ: “số điện thoại bảo hành Samsung Hà Nội”).

Lưu ý: ContactPoint không trực tiếp nâng thứ hạng, nhưng là yếu tố hỗ trợ trải nghiệm tìm kiếm (search experience), từ đó gián tiếp ảnh hưởng đến CTR và tỷ lệ giữ chân người dùng.

Cách hoạt động

ContactPoint Schema hoạt động bằng cách gắn thẻ dữ liệu có cấu trúc (JSON-LD hoặc Microdata) vào mã nguồn trang web. Khi Googlebot quét trang, nó đọc phần markup này, so sánh với các nguồn dữ liệu khác (như Google Business Profile, danh bạ doanh nghiệp, trang liên hệ), rồi quyết định có hiển thị thông tin liên hệ mở rộng hay không.

Quá trình này phụ thuộc vào ba yếu tố chính:

  1. Tính hợp lệ: Markup phải tuân thủ đúng định dạng schema.org và không vi phạm quy tắc bắt buộc (ví dụ: bắt buộc có contactType và ít nhất một trong telephone, email, url);
  2. Tính nhất quán: Thông tin trong schema phải trùng khớp với nội dung hiển thị trên trang và dữ liệu trên nền tảng bên ngoài (Google Business Profile, Facebook…);
  3. Tính liên quan: ContactPoint nên được đặt trên trang phù hợp — thường là trang Liên hệ, trang Về chúng tôi, hoặc trang giới thiệu chi nhánh.

Hướng dẫn thực hiện

Dưới đây là 5 bước triển khai ContactPoint Schema chuẩn xác:

  1. Xác định các điểm liên hệ cần khai báo: Ví dụ: tổng đài miễn phí, email hỗ trợ, Zalo CSKH, số hotline kỹ thuật, chat trực tuyến… Mỗi điểm cần có mục đích rõ ràng.
  2. Chọn định dạng markup: Ưu tiên JSON-LD (đặt trong thẻ <head> hoặc cuối <body>) vì dễ kiểm soát, ít xung đột với HTML.
  3. Khai báo thuộc tính bắt buộc và tùy chọn:
    • Bắt buộc: @type = "ContactPoint", contactType (vd: "Hỗ trợ khách hàng"), và ít nhất một trong: telephone, email, url.
    • Tùy chọn nhưng khuyến khích: areaServed (khu vực phục vụ), availableLanguage, hoursAvailable, serviceArea (nếu là doanh nghiệp dịch vụ tại chỗ).
  4. Kiểm tra bằng công cụ chính thức: Dùng Rich Results Test hoặc Schema Markup Validator để xác nhận không có lỗi.
  5. Đồng bộ hóa dữ liệu: Đảm bảo số điện thoại, email, giờ làm việc trong schema trùng với nội dung hiển thị trên trang và hồ sơ Google Business Profile.

Lỗi thường gặp

Dưới đây là những sai lầm phổ biến và cách khắc phục:

Lỗi Hệ quả Cách sửa
Thiếu contactType Markup bị coi là không hợp lệ; Google bỏ qua hoàn toàn Thêm giá trị rõ ràng như "Bán hàng", "Khiếu nại", "Hỗ trợ kỹ thuật" — không dùng từ chung chung như "Liên hệ".
Dùng định dạng số điện thoại không chuẩn (vd: 090x.xxx.xxx thay vì +8490x.xxx.xxx) Google không nhận diện được số quốc tế; giảm khả năng hiển thị trên tìm kiếm toàn cầu Dùng định dạng quốc tế: bắt đầu bằng +, không dấu ngoặc, không gạch ngang (ví dụ: "telephone": "+842439381234").
Khai báo hoursAvailable nhưng không dùng định dạng OpeningHoursSpecification Giờ mở cửa không được đọc đúng — có thể hiển thị sai hoặc không hiển thị Sử dụng đúng cấu trúc con: dayOfWeek, opens, closes (vd: {"@type":"OpeningHoursSpecification","dayOfWeek":"Monday","opens":"08:00","closes":"17:30"}).
Đặt schema trên trang chủ nhưng không liên quan đến thông tin liên hệ thực tế Google đánh giá thấp mức độ liên quan → không kích hoạt rich result Chỉ đặt ContactPoint trên trang có nội dung liên hệ rõ ràng (trang Liên hệ, Chi nhánh, Hỗ trợ…).

Ví dụ thực tế

Dưới đây là đoạn JSON-LD ContactPoint Schema cho một trung tâm bảo hành tại Đà Nẵng, hỗ trợ tiếng Việt và tiếng Anh, làm việc từ thứ Hai đến thứ Bảy:

{ "@context": "https://schema.org", "@type": "ContactPoint", "contactType": "Bảo hành sản phẩm", "telephone": "+842363821555", "email": "baohanh@congtyabc.vn", "areaServed": { "@type": "AdministrativeArea", "name": "Đà Nẵng" }, "availableLanguage": ["Tiếng Việt", "Tiếng Anh"], "hoursAvailable": [ { "@type": "OpeningHoursSpecification", "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], "opens": "07:30", "closes": "17:00" } ] }

Lưu ý: areaServed có thể là chuỗi ("Việt Nam"), đối tượng AdministrativeArea, hoặc GeoCircle — tùy trường hợp.

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

ContactPoint Schema có cần thiết với mọi website?

Không bắt buộc, nhưng rất nên dùng nếu website có mục tiêu thu hút khách hàng liên hệ trực tiếp — đặc biệt với doanh nghiệp thương mại điện tử, dịch vụ, giáo dục, y tế hoặc bất động sản. Với blog cá nhân hoặc trang tin tức, giá trị mang lại gần như bằng không.

Một doanh nghiệp có thể khai báo bao nhiêu ContactPoint?

Không giới hạn số lượng. Tuy nhiên, Google khuyến nghị chỉ khai báo các điểm liên hệ thực sự đang hoạt động và có người xử lý. Việc khai báo quá nhiều ContactPoint không liên quan (ví dụ: 10 số hotline không tồn tại) có thể gây nhiễu dữ liệu và ảnh hưởng đến độ tin cậy.

ContactPoint Schema có hỗ trợ đa ngôn ngữ không?

Có. Thuộc tính availableLanguage chấp nhận cả mảng tên ngôn ngữ (vd: ["Tiếng Việt", "English"]) hoặc mã ISO 639-1 (vd: ["vi", "en"]). Tuy nhiên, Google hiện chưa sử dụng thông tin này để lọc kết quả tìm kiếm theo ngôn ngữ — nó chủ yếu phục vụ cho hệ thống nội bộ và tích hợp với các nền tảng hỗ trợ đa ngôn ngữ.