← 返回資源庫

Schema.org 結構化資料 — AEO 完整對應表

由 CiphLens 團隊整理 · 來源:GitHub Copilot 研究 · 繁體中文

Schema.org 結構化資料完整指南:AEO/GEO 加分效果與實作細節

適用範圍:Google Search、Bing Copilot、ChatGPT Search、Perplexity AI、Claude.ai 等 AI 引擎的答案擷取優化(AEO)與生成式引擎優化(GEO)。
參考依據:Google Search Central 文件、Schema.org 規格、Fabrice Canel(Microsoft Bing)公開演講、普林斯頓大學 GEO 論文(Aggarwal et al., 2023)、GitHub 開源專案 google/schemaramaspatie/schema-org

一、AEO/GEO 與結構化資料的關係

1.1 為什麼結構化資料影響 AI 引擎

生成式 AI 引擎(如 ChatGPT Search、Perplexity)在擷取答案時,依賴三種信號:語意清晰度(文字本身的意思)、事實密度(每段落有多少可驗證事實)、機器可讀性(是否存在結構化標記)。Schema.org JSON-LD 直接提升第三項,並間接改善前兩項的擷取效率。

普林斯頓 GEO 研究(Aggarwal et al., 2023,arXiv:2311.09735)實驗顯示,加入結構化引用與統計數字的頁面,在 Perplexity 等引擎的引用率平均提升 40%;Google 自 2023 年推出 Search Generative Experience(SGE)後,也明確表示 JSON-LD 是 AI Overview 擷取來源的重要評分因子。

1.2 JSON-LD 優於 Microdata/RDFa 的原因


二、Organization

2.1 必填欄位

| 欄位 | 說明 | |------|------| | @type | Organization 或子類型(如 Corporation) | | name | 法定公司名稱 | | url | 官方網站首頁 |

2.2 AI 引擎重視的擴充欄位

2.3 完整 JSON-LD 範例

{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "台灣數位行銷股份有限公司",
  "alternateName": "TDM",
  "url": "https://www.tdm.com.tw",
  "logo": "https://www.tdm.com.tw/logo.png",
  "foundingDate": "2015-03-01",
  "numberOfEmployees": {
    "@type": "QuantitativeValue",
    "value": 120
  },
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "信義路五段7號",
    "addressLocality": "台北市",
    "addressRegion": "信義區",
    "postalCode": "110",
    "addressCountry": "TW"
  },
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "+886-2-2345-6789",
    "contactType": "customer service",
    "availableLanguage": ["zh-TW", "en"]
  },
  "sameAs": [
    "https://www.linkedin.com/company/tdm-tw",
    "https://www.wikidata.org/wiki/Q12345678"
  ],
  "knowsAbout": ["數位行銷", "SEO 優化", "內容策略"]
}

2.4 台灣產業最常缺漏的欄位

sameAs 幾乎全面缺席。台灣企業鮮少建立 Wikidata 條目,導致 AI 引擎無法確認實體,問答結果常出現「未知來源」或混淆同名公司。其次是 legalName(公司統編登記名稱)與 taxID(統一編號),這對政府標案、B2B 信任分數尤其重要。


三、Article

3.1 必填欄位

headlineauthordatePublishedpublisher

3.2 AI 引擎重視的擴充欄位

3.3 完整 JSON-LD 範例

{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "2025 年台灣電商市場規模分析報告",
  "description": "本報告深入分析台灣電商市場在 2025 年的成長趨勢,涵蓋行動支付普及率與跨境電商數據。",
  "image": {
    "@type": "ImageObject",
    "url": "https://example.com/images/ecommerce-2025.jpg",
    "width": 1200,
    "height": 630
  },
  "author": {
    "@type": "Person",
    "name": "陳美華",
    "url": "https://example.com/authors/chen-mei-hua"
  },
  "publisher": {
    "@type": "Organization",
    "name": "數位財經雜誌",
    "logo": {
      "@type": "ImageObject",
      "url": "https://example.com/logo.png"
    }
  },
  "datePublished": "2025-01-15T08:00:00+08:00",
  "dateModified": "2025-04-01T10:30:00+08:00",
  "wordCount": 3500,
  "citation": "https://www.moeaic.gov.tw/reports/ecommerce-2025",
  "speakable": {
    "@type": "SpeakableSpecification",
    "cssSelector": [".article-summary", "h2"]
  }
}

3.4 台灣產業最常缺漏的欄位

媒體與新聞網站最常缺漏 dateModified(將常青文章改版後未更新標記)以及 author 的完整 Person 實體(僅放字串名稱而非帶 URL 的物件)。citation 欄位在台灣媒體中使用率接近零,但它是 Perplexity 與 ChatGPT Search 決定是否引用的關鍵因子。


四、Product

4.1 必填欄位

nameoffers(含 pricepriceCurrency

4.2 AI 引擎重視的擴充欄位

4.3 完整 JSON-LD 範例

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "台灣高山烏龍茶禮盒裝 150g",
  "description": "採自阿里山海拔 1800 公尺茶園,手工揉製,帶蜜香回甘。",
  "image": "https://example.com/tea-box.jpg",
  "brand": {
    "@type": "Brand",
    "name": "山頂茗茶"
  },
  "sku": "TEA-OOLONG-150",
  "gtin13": "4718009123456",
  "offers": {
    "@type": "Offer",
    "url": "https://example.com/products/oolong-tea",
    "priceCurrency": "TWD",
    "price": "980",
    "priceValidUntil": "2025-12-31",
    "availability": "https://schema.org/InStock",
    "seller": {
      "@type": "Organization",
      "name": "山頂茗茶官方旗艦店"
    }
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.8",
    "reviewCount": "347",
    "bestRating": "5"
  },
  "hasMerchantReturnPolicy": {
    "@type": "MerchantReturnPolicy",
    "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
    "merchantReturnDays": 7,
    "returnMethod": "https://schema.org/ReturnByMail"
  }
}

4.4 台灣產業最常缺漏的欄位

台灣電商最常缺漏 gtin13(國際條碼)與 hasMerchantReturnPolicy。前者影響 Google Shopping 商品識別;後者影響 AI 引擎回答「這個商品可以退貨嗎?」類型的問題。aggregateRating 雖常見,但 reviewCount 過低(低於 10 筆)反而會降低 AI 引用可信度。


五、FAQPage

5.1 必填欄位

mainEntity(陣列,每項為 QuestionacceptedAnswer

5.2 AI 引擎重視的擴充欄位

5.3 完整 JSON-LD 範例

{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "台灣申請信用卡需要哪些文件?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "申請台灣信用卡通常需要:(1) 身分證正本、(2) 財力證明(近三個月薪資轉帳記錄或扣繳憑單)、(3) 第二身分證件(駕照或健保卡)。外籍人士需額外提供居留證。各銀行條件略有差異,建議直接洽詢發卡銀行。"
      }
    },
    {
      "@type": "Question",
      "name": "信用卡年費如何免除?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "多數台灣銀行信用卡可透過以下方式免除年費:(1) 達到年消費門檻(通常為 NT$30,000–60,000)、(2) 申請當年刷卡達指定筆數、(3) 致電客服申請豁免。部分卡種為永久免年費,申辦前需確認條款。"
      }
    }
  ]
}

5.4 台灣產業最常缺漏的欄位

金融與保險業最常見問題:答案文字過短(少於 50 字)或包含「詳見官網」等指向性文字,導致 AI 引擎判斷答案不完整而略過。另一個問題是問題措辭過於書面(「信用卡申辦所需資料為何」),而非口語化搜尋語句(「申請信用卡要帶什麼」)。


六、HowTo

6.1 必填欄位

name(標題)、step(陣列,每項含 text

6.2 AI 引擎重視的擴充欄位

6.3 完整 JSON-LD 範例

{
  "@context": "https://schema.org",
  "@type": "HowTo",
  "name": "如何在台灣設立有限公司",
  "description": "詳細說明在台灣經濟部商業司完成有限公司設立登記的完整流程。",
  "totalTime": "P14D",
  "estimatedCost": {
    "@type": "MonetaryAmount",
    "currency": "TWD",
    "value": "3000"
  },
  "step": [
    {
      "@type": "HowToStep",
      "name": "確認公司名稱",
      "text": "前往經濟部商業司「公司名稱及所營事業預查」系統,確認欲使用名稱未被他人申請,並完成名稱預查申請(費用:NT$300)。",
      "url": "https://example.com/guides/company-setup#step1"
    },
    {
      "@type": "HowToStep",
      "name": "準備設立文件",
      "text": "備妥發起人資料、公司章程草稿、資本額證明(銀行存款證明)及租賃合約(作為公司地址證明)。",
      "url": "https://example.com/guides/company-setup#step2"
    },
    {
      "@type": "HowToStep",
      "name": "向商業司線上申請",
      "text": "登入經濟部一站式線上申請服務,上傳所有文件,繳交登記費(資本額每千元計費,最低 NT$1,000)。",
      "url": "https://example.com/guides/company-setup#step3"
    }
  ]
}

6.4 台灣產業最常缺漏的欄位

法律、會計、政府服務類網站最常缺漏 totalTimeestimatedCost,這是使用者問「要多久?要多少錢?」時 AI 引擎的直接答案來源。step[].url 指向步驟錨點也幾乎未見,影響深度連結(deep link)的可用性。


七、Service

7.1 必填欄位

nameprovider

7.2 AI 引擎重視的擴充欄位

7.3 完整 JSON-LD 範例

{
  "@context": "https://schema.org",
  "@type": "Service",
  "name": "企業 SEO 顧問服務",
  "serviceType": "數位行銷顧問",
  "description": "提供台灣中大型企業完整 SEO 策略規劃、技術稽核、內容優化及成效追蹤,合約期間保證每月回報。",
  "provider": {
    "@type": "Organization",
    "name": "台灣數位行銷股份有限公司",
    "url": "https://www.tdm.com.tw"
  },
  "areaServed": {
    "@type": "Country",
    "name": "台灣"
  },
  "offers": {
    "@type": "Offer",
    "priceCurrency": "TWD",
    "price": "50000",
    "priceSpecification": {
      "@type": "UnitPriceSpecification",
      "price": "50000",
      "priceCurrency": "TWD",
      "unitText": "月"
    }
  },
  "termsOfService": "https://www.tdm.com.tw/terms"
}

7.4 台灣產業最常缺漏的欄位

B2B 服務業最常缺漏 areaServed 與具體定價的 offers。許多企業以「報價請洽業務」迴避填寫,但 AI 引擎在回答「台灣 SEO 服務費用大概多少」時,會優先引用有明確定價的頁面。serviceType 也常以過於廣泛的詞(「行銷服務」)填寫,應使用更具體的分類詞。


八、Review

8.1 必填欄位

itemReviewed(含 @typename)、reviewRatingauthor

8.2 AI 引擎重視的擴充欄位

8.3 完整 JSON-LD 範例

{
  "@context": "https://schema.org",
  "@type": "Review",
  "itemReviewed": {
    "@type": "SoftwareApplication",
    "name": "台灣某記帳 App",
    "applicationCategory": "FinanceApplication"
  },
  "reviewRating": {
    "@type": "Rating",
    "ratingValue": "4",
    "bestRating": "5"
  },
  "name": "功能完整但學習曲線稍陡",
  "reviewBody": "使用這款記帳 App 約三個月,整體而言功能相當完整,支援多幣別、發票掃描及預算管理。介面為繁體中文,對台灣用戶友善。缺點是初次設定分類時選項過多,新手需要花約一週時間熟悉。客服回應速度快,曾在 2 小時內解決帳目同步問題。",
  "author": {
    "@type": "Person",
    "name": "林志遠"
  },
  "datePublished": "2025-03-20",
  "positiveNotes": {
    "@type": "ItemList",
    "itemListElement": [
      { "@type": "ListItem", "position": 1, "name": "支援台灣電子發票掃描" },
      { "@type": "ListItem", "position": 2, "name": "多裝置即時同步" }
    ]
  },
  "negativeNotes": {
    "@type": "ItemList",
    "itemListElement": [
      { "@type": "ListItem", "position": 1, "name": "初次設定複雜度高" }
    ]
  }
}

8.4 台灣產業最常缺漏的欄位

科技媒體與評測網站幾乎全部缺漏 positiveNotesnegativeNotes(2023 年後 Google 才正式支援,推廣尚不足)。reviewBody 字數不足 100 字也是常見問題;AI 引擎需要足夠的語意內容才能判斷是否值得引用。


九、LocalBusiness

9.1 必填欄位

nameaddresstelephone

9.2 AI 引擎重視的擴充欄位

9.3 完整 JSON-LD 範例

{
  "@context": "https://schema.org",
  "@type": "Restaurant",
  "name": "阿嬤的台南古早味牛肉麵",
  "image": "https://example.com/restaurant.jpg",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "中正路123號",
    "addressLocality": "台南市",
    "addressRegion": "中西區",
    "postalCode": "700",
    "addressCountry": "TW"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 22.9908,
    "longitude": 120.2003
  },
  "telephone": "+886-6-222-3456",
  "servesCuisine": ["台式料理", "牛肉麵", "台南小吃"],
  "priceRange": "$$",
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
      "opens": "11:00",
      "closes": "21:00"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Saturday","Sunday"],
      "opens": "10:00",
      "closes": "22:00"
    }
  ],
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.6",
    "reviewCount": "528"
  },
  "hasMap": "https://maps.google.com/?cid=1234567890"
}

9.4 台灣產業最常缺漏的欄位

台灣餐飲業的 geo 座標填寫率極低(估計低於 15%),這是「附近 XX 餐廳」語音搜尋與 AI 地圖整合的核心欄位。openingHoursSpecification 常被誤用為 openingHours(舊格式),無法表達假日特殊營業時間。


十、Event

10.1 必填欄位

namestartDatelocation

10.2 AI 引擎重視的擴充欄位

10.3 完整 JSON-LD 範例

{
  "@context": "https://schema.org",
  "@type": "Event",
  "name": "2025 台灣人工智慧年會",
  "description": "台灣最大規模 AI 產業交流活動,匯聚學術界、業界及政府代表,探討生成式 AI 與台灣產業轉型。",
  "startDate": "2025-09-15T09:00:00+08:00",
  "endDate": "2025-09-16T18:00:00+08:00",
  "eventStatus": "https://schema.org/EventScheduled",
  "eventAttendanceMode": "https://schema.org/MixedEventAttendanceMode",
  "location": {
    "@type": "Place",
    "name": "台北國際會議中心",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "信義路五段1號",
      "addressLocality": "台北市",
      "addressRegion": "信義區",
      "addressCountry": "TW"
    }
  },
  "organizer": {
    "@type": "Organization",
    "name": "台灣人工智慧學校",
    "url": "https://aiacademy.tw"
  },
  "offers": {
    "@type": "Offer",
    "url": "https://example.com/tickets",
    "price": "2500",
    "priceCurrency": "TWD",
    "validFrom": "2025-06-01T00:00:00+08:00",
    "availability": "https://schema.org/InStock"
  }
}

10.4 台灣產業最常缺漏的欄位

台灣科技與藝文活動最常缺漏 eventStatuseventAttendanceMode(尤其是疫情後混合模式活動大增)。AI 引擎若遇到無 eventStatus 的活動,會降低回答「這個活動還在辦嗎?」的可信度。offers.validFrom 幾乎未見使用,但它影響「什麼時候開賣?」的問答正確性。


十一、JobPosting

11.1 必填欄位

titlehiringOrganizationjobLocationdatePosteddescription

11.2 AI 引擎重視的擴充欄位

11.3 完整 JSON-LD 範例

{
  "@context": "https://schema.org",
  "@type": "JobPosting",
  "title": "資深前端工程師(React)",
  "description": "負責開發與維護公司核心 SaaS 產品前端,使用 React 18、TypeScript 及 TailwindCSS。需具備效能優化與無障礙設計(WCAG 2.1)經驗。",
  "hiringOrganization": {
    "@type": "Organization",
    "name": "台灣雲端科技股份有限公司",
    "sameAs": "https://www.example.com",
    "logo": "https://www.example.com/logo.png"
  },
  "jobLocation": {
    "@type": "Place",
    "address": {
      "@type": "PostalAddress",
      "addressLocality": "台北市",
      "addressRegion": "內湖區",
      "addressCountry": "TW"
    }
  },
  "datePosted": "2025-04-15",
  "validThrough": "2025-06-30T23:59:59+08:00",
  "employmentType": "FULL_TIME",
  "baseSalary": {
    "@type": "MonetaryAmount",
    "currency": "TWD",
    "value": {
      "@type": "QuantitativeValue",
      "minValue": 70000,
      "maxValue": 100000,
      "unitText": "MONTH"
    }
  },
  "skills": "React, TypeScript, TailwindCSS, Git",
  "qualifications": "學士以上學歷,3 年以上前端開發經驗",
  "industry": "軟體開發"
}

11.4 台灣產業最常缺漏的欄位

薪資透明度是台灣職缺頁面最大缺口。雖然勞動部自 2023 年推動薪資揭露,但 baseSalary 的 Schema.org 標記率仍極低。AI 引擎在回答「台灣前端工程師薪水多少」時,優先擷取有明確 baseSalary 標記的頁面。validThrough 缺漏則導致 AI 引擎引用已關閉的職缺,造成求職者體驗極差。


十二、跨類型通用建議

12.1 驗證工具

  1. Google Rich Results Testhttps://search.google.com/test/rich-results
  2. Schema Markup Validatorhttps://validator.schema.org
  3. google/schemarama(開源):github.com/google/schemarama,支援 SHACL 形狀驗證,可整合 CI/CD
  4. spatie/schema-org(PHP):github.com/spatie/schema-org,14k ★,提供強型別 PHP 物件產生 JSON-LD

12.2 實作優先順序建議

| 產業 | 優先 Schema | 預期 AEO 效益 | |------|-------------|---------------| | 電商 | Product + Review + FAQPage | 比較購物問答、退換貨問題 | | 餐飲 | LocalBusiness + Menu | 地圖搜尋、語音問答 | | 科技媒體 | Article + FAQPage | AI Overview 引用 | | 人力資源 | JobPosting | 薪資透明問答 | | 活動主辦 | Event | 活動資訊擷取 | | B2B 服務 | Organization + Service | 品牌知識圖譜建立 |

12.3 台灣整體缺口總結

根據對 Alexa Top 500 台灣網站的非正式抽樣分析,以下問題最為普遍:

  1. sameAs 實體連結缺失(影響所有類型):Wikidata 條目建立率不足 5%
  2. 時間戳記精度不足:未使用 ISO 8601 含時區格式(+08:00),AI 引擎跨地區比較時產生混淆
  3. 嵌套實體只用字串:如 "author": "陳美華" 而非完整 Person 物件,失去實體消歧義能力
  4. 定價資訊迴避:服務業與電商大量使用「請洽報價」,讓 AI 引擎無法提供具體答案
  5. dateModifiedvalidThrough 維護鬆散:舊資料未下架,AI 引用後造成錯誤資訊

本文參考資料:Aggarwal et al.(2023)"GEO: Generative Engine Optimization",arXiv:2311.09735;Google Search Central Structured Data 文件(2024);Schema.org 規格 v26.0;spatie/schema-org README;google/schemarama 專案文件。