---
title: "Custom Gas Token：如何用 ERC-20 代幣支付交易手續費"
description: "了解 Custom Gas Tokens 如何讓使用者以你的 ERC-20 代幣取代 ETH 支付交易手續費。完整指南涵蓋實作方式、經濟面考量與實際案例研究。"
---

# Custom Gas Token：如何用 ERC-20 代幣支付交易手續費

<ImageBlock
  src="https://media.alchemy.com/1750256084-custom-gas-tokens-twitter.jpg"
  alt="Custom Gas Tokens 讓區塊鏈營運方能設定自己的原生代幣。"
  width={2400}
  height={1350}
  caption="Custom Gas Tokens 讓區塊鏈營運方能設定自己的原生代幣。"
  priority
/>

過去，通用區塊鏈（Ethereum、Solana 等）決定了用於交易手續費的原生代幣。隨著 app-chain 和 [rollups](/rollups) 的興起，Custom Gas Tokens（CGTs）讓區塊鏈營運方可以自行設定原生代幣。

這項功能帶來一些好處，例如提升代幣效用、改善使用者體驗，以及對生態系經濟提供更大掌控力。不過，實作時需要仔細考量技術路線（Native vs. [Account Abstraction](/gasless-transactions)）及其經濟權衡。

## 什麼是 custom gas token？

Custom Gas Tokens（CGTs）是鏈開發者設定用來支付交易的替代代幣（通常是 ERC-20）。這改變了我們對區塊鏈基礎設施的理解方式，讓協定開發者得以打造自成一體的經濟系統，網路手續費以生態系自身的貨幣支付。

這項能力對於[應用專屬鏈](/rollups)、[遊戲](/gaming)生態系，以及想打造流暢使用者體驗的 [DeFi 協定](/defi)特別有價值。

### 對鏈營運方與應用開發者的主要好處

<ImageBlock
  src="https://media.alchemy.com/1750257010-custom-gas-tokens-twitter-1.jpg"
  alt="CGT 為鏈、應用程式與使用者帶來更好的體驗"
  width={2880}
  height={1620}
  caption="CGT 為鏈、應用程式與使用者帶來更好的體驗"
/>

- **提升代幣效用：** 將你的代幣從投機或治理資產轉變為必要的基礎設施。每筆交易都需要用到你的代幣，創造持續且真實的需求，透過根本性的效用而非投機來驅動價值累積。
- **內化經濟價值：** 交易手續費留在你的生態系內，而不是流向 ETH 或其他外部代幣。這創造出更具永續性的經濟模型，讓你的社群直接獲取網路活動所產生的價值。
- **統一的品牌體驗：** 讓使用者完全以你的原生代幣互動，強化生態系的品牌識別。這對於重視品牌一致性與使用者體驗差異化的遊戲鏈、社交平台或特定 DeFi 生態系尤其重要。
- 改善使用者體驗：消除使用者必須不斷管理多種代幣的「gas token 換來換去」問題。有了 custom gas token，使用者在你的生態系中只需持有一種代幣即可滿足所有需求，大幅降低入門門檻。

### 實作方式：native vs. account abstraction

<EmbeddedTable
  table={{
    columns: [
      { key: "1", width: 200, title: "Aspect", dataType: "object" },
      { key: "2", width: 200, title: "Native Implementation", dataType: "object" },
      { key: "3", width: 200, title: "Account Abstraction", dataType: "object" },
    ],
    data: [
      {
        "1": { title: "<p>Implementation Level</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Protocol (EVM)</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Application (Smart Contract)</p>", tooltip: "", icon: "" },
        id: 0,
      },
      {
        "1": { title: "<p>Setup Complexity</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Moderate</p>", tooltip: "", icon: "" },
        "3": { title: "<p>High</p>", tooltip: "", icon: "" },
        id: 1,
      },
      {
        "1": { title: "<p>Flexibility</p>", tooltip: "", icon: "" },
        "2": { title: "<p>None- immutable post-genesis</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Dynamic - Modifiable Runtime</p>", tooltip: "", icon: "" },
        id: 2,
      },
      {
        "1": { title: "<p>Gas Overhead</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Minimal</p>", tooltip: "", icon: "" },
        "3": { title: "<p>-21,000 additional gas</p>", tooltip: "", icon: "" },
        id: 3,
      },
      {
        "1": { title: "<p>Developer Experience</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Standard tooling compatible</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Requires AA-specific SDKs</p>", tooltip: "", icon: "" },
        id: 4,
      },
      {
        "1": { title: "<p>Token Switching</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Requires chain migration</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Runtime configurable</p>", tooltip: "", icon: "" },
        id: 5,
      },
    ],
  }}
/>

#### Native 實作

Native 方式是在創世區塊時，將鏈設定為在協定層使用指定的 ERC-20 代幣支付所有 gas 費用。

**支援的鏈：**

- ✅ [Arbitrum Orbit](https://www.alchemy.com/dapps/arbitrum-orbit)（完整支援，含動態價格 oracle）
- ✅ [zkSync Era](https://www.alchemy.com/overviews/how-to-start-developing-on-zksync-in-5-steps)（持續支援中）
- ✅ Avalanche L1s
- ❌ [OP Stack](https://www.alchemy.com/dapps/op-stack)（自 2024 年 5 月起已棄用）

**主要特性：**

- 要求 100% 的交易都使用指定代幣
- 直接與現有開發工具及基礎設施整合
- 創世部署後設定即不可更改
- 在 EVM 層提供確定性的 gas 計算

**主要考量：**

- 缺乏支援多種代幣或部署後更換代幣的彈性
- 要求使用者取得指定代幣，可能增加入門的複雜度
- 在協定層以可預測的 gas 成本簡化交易流程
- 可能限制與預期使用原生 ETH 或其他代幣的應用程式的相容性
- 依賴整條鏈對指定代幣的採用，會影響生態系多樣性

#### Account abstraction 實作

Account abstraction 方式運用 [ERC-4337](/overviews/what-is-account-abstraction) 標準，透過 [paymaster](/overviews/what-is-a-paymaster) 架構，讓 gas 費用可以用任何 ERC-20 代幣支付，而不需修改鏈的核心協定。

**支援的鏈：**

- ✅ 相容於任何符合 ERC-4337 標準的鏈
- ✅ 符合 OP Stack 棄用後的產業趨勢
- ❌ 需要 paymaster 基礎設施，各鏈可能有所不同
- ❌ 並非在協定層強制執行，限制了普及採用

**主要特性：**

- 提供最大彈性，可支援多種代幣或無需協定升級即可更換代幣
- 提供細緻的控制，讓應用程式可以指定不同的 gas token
- 透過接受 ERC-20 代幣並在內部處理轉換，避免拋售壓力
- 提供符合 ERC-4337 標準、具前瞻性的架構

**主要考量：**

- 因額外的基礎設施（paymaster、bundler、entry point）而增加複雜度
- 使開發者與使用者的 gas 估算及交易流程更複雜
- 消除代幣橋接需求，簡化多樣代幣使用時的使用者體驗
- 由於代幣使用是在應用層強制執行，存在採用不一致的風險
- 需要為下游工具（如區塊瀏覽器、索引器）進行客製化設定

## 經濟面考量

### 母鏈手續費挑戰

當 L2 使用 custom gas token 時，仍需要 ETH 來支付 Ethereum（L1）上的資料可用性成本。同樣地，L3 也需要其 L2 的原生代幣。這帶來一個關鍵的經濟動態：

1. **收取階段**：鏈從使用者處以 CustomToken 累積 gas 手續費
1. **轉換需求**：鏈需要 ETH/母代幣以支付資料上鏈成本
1. **市場操作**：鏈必須執行 CustomToken → 母代幣 的兌換
1. **價格影響**：對 CustomToken 造成系統性的拋售壓力

### 管理代幣經濟

鏈營運方必須實作精細的經濟模型，考量以下因素：

- **收取預測**：對 gas token 累積速率建立統計模型
- **匯率波動**：針對代幣價格波動制定避險策略
- **流動性需求**：確保有足夠的市場深度以進行兌換
- **儲備管理**：維持應對價格衝擊的營運緩衝

**風險情境**：代幣價格若下跌 50%，可能導致已收取的 gas 手續費不足以支付母鏈成本，並隨每個區塊累積成營運赤字。

## 技術需求與規格

### 典型的 ERC-20 代幣合規需求

你的代幣實作通常需要滿足以下技術限制：

- 標準 ERC-20 介面實作
- 小數位數精確為 18 位（於合約層強制規定）
- 非 rebasing 的代幣供應機制
- 沒有轉帳手續費或稅收機制
- 沒有 callback hook（不具備 ERC-777 功能）
- `name\(\)` 與 `symbol\(\)` 回傳值 ≤ 32 bytes
- 單一轉帳入口點（不使用可升級代理模式）

### 核心協定介面

<CodeSnippet language="solidity" code={`solidity
interface IGasToken {
/// @notice Returns the gas token address and decimals/// @return token The ERC20 token address (or 0xEeee...eEEeE for ETH)/// @return decimals Always 18 for valid gas tokens
    function gasPayingToken() external view returns (address token, uint8 decimals);

/// @notice Returns the gas token name
function gasPayingTokenName() external view returns (string memory);

/// @notice Returns the gas token symbol
function gasPayingTokenSymbol() external view returns (string memory);

/// @notice Indicates if a custom gas token is active
function isCustomGasToken() external view returns (bool);
}`} />
對於使用 ETH 的鏈，`gasPayingToken\(\)` 必須回傳：`\(0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE, 18\)`

### Account abstraction 交易流程

<EmbeddedTable
  table={{
    columns: [
      { key: "1", width: 200, title: "Aspect", dataType: "object" },
      { key: "2", width: 200, title: "Native Implementation", dataType: "object" },
      { key: "3", width: 200, title: "Account Abstraction", dataType: "object" },
    ],
    data: [
      {
        "1": { title: "<p>Implementation Level</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Protocol (EVM)</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Application (Smart Contract)</p>", tooltip: "", icon: "" },
        id: 0,
      },
      {
        "1": { title: "<p>Setup Complexity</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Moderate</p>", tooltip: "", icon: "" },
        "3": { title: "<p>High</p>", tooltip: "", icon: "" },
        id: 1,
      },
      {
        "1": { title: "<p>Flexibility</p>", tooltip: "", icon: "" },
        "2": { title: "<p>None- immutable post-genesis</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Dynamic - Modifiable Runtime</p>", tooltip: "", icon: "" },
        id: 2,
      },
      {
        "1": { title: "<p>Gas Overhead</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Minimal</p>", tooltip: "", icon: "" },
        "3": { title: "<p>~21,000 additional gas</p>", tooltip: "", icon: "" },
        id: 3,
      },
      {
        "1": { title: "<p>Developer Experience</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Standard tooling compatible</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Requires AA-specific SDKs</p>", tooltip: "", icon: "" },
        id: 4,
      },
      {
        "1": { title: "<p>Token Switching</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Requires chain migration</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Runtime configurable</p>", tooltip: "", icon: "" },
        id: 5,
      },
    ],
  }}
/>

AA 的 gas 支付流程依以下順序運作：

1. **User Operation 提交**：使用者簽署操作，並表明以 custom token 支付 gas 的意圖
1. **Paymaster 驗證**：驗證代幣是否可接受，並計算所需金額
1. **代幣收取**：Paymaster 透過 `transferFrom` 從使用者處拉取 custom token
1. **Gas 支付**：Paymaster 支付 ETH 給 bundler 以支付實際執行成本
1. **結算**：Paymaster 非同步處理代幣 → ETH 的轉換

這種架構將 gas 的複雜性從終端使用者身上抽象化，同時維持安全性保證。

## 生產環境實作與案例研究

### 成功的部署案例

[**Degen Chain**](https://www.degen.tips/)（Base 上的 Arbitrum Orbit L3）

- 首週交易量超過 1,400 萬筆
- 活躍地址數超過 77 萬
- 橋接總值超過 6,000 萬美元
- 以原生社群代幣展現出強大的產品市場契合度

[**DeFi Kingdoms**](https://defikingdoms.com/)（Avalanche Subnet）

- 以 CRYSTAL 作為 custom gas token 實作
- 採用新穎的基於質押的分配機制
- 在經濟轉型過程中維持使用者參與度

### 基礎設施供應商的考量

RaaS 供應商與基礎設施團隊可以運用 custom gas token 提供差異化服務，包括自動化代幣驗證、價格 oracle 整合，以及流動性管理解決方案。這為 rollup 生態系中的加值服務創造了新的機會。

### 從 Optimism 棄用經驗中學習

Optimism 在 2024 年 5 月棄用原生 custom gas token，帶來幾項關鍵洞見：

- L1 portal 合約修改所涉及的安全疑慮
- 對協定升級缺乏架構彈性
- 透過 Account Abstraction 模式可提供更優質的使用者體驗

## 遷移與升級考量

<CalloutBlock>

⚠️ **重要警告**：部署後遷移或更換 gas token，會帶來相當大的技術挑戰。

</CalloutBlock>

遷移的複雜度包含：

1. 需搭配狀態遷移的橋接合約升級
1. 為了資金核對而需要暫停整條鏈
1. 使用者餘額的對應與驗證
1. 需要協調整個生態系的轉型
1. 遷移過程中存在資金遺失的非零風險

**最佳實務**：在創世階段就進行完整的經濟建模，並謹慎選擇實作架構。若不確定，建議採用 Account Abstraction 以保留彈性。

## 實作決策框架

**適合採用的情況：**

- 你擁有具備真實效用與流動性的強勢代幣
- 你的使用者已經持有並積極使用你的代幣
- 你希望對鏈的經濟完全掌控
- 你正在打造封閉式生態系（遊戲、社交）
- 你有足夠資源進行流動性管理

**不適合採用的情況：**

- 你需要與其他鏈有最大程度的互通性
- 你的代幣波動大或流動性不足
- 你希望「最大程度地與 ETH 一致」
- 你缺乏處理營運複雜度的資源
- 你所在司法管轄區存在監管疑慮

## 產業趨勢與未來展望

整體生態系明顯朝向 custom gas token 基礎設施發展：

- **Optimism**：完全棄用原生實作
- **Arbitrum**：雙軌支援，AA 採用率持續上升
- **zkSync**：維持原生支援，並規劃導入 AA
- **Avalanche**：採協定無關方式，兩者皆支援
- **產業標準**：ERC-4337 在各 L2 間的採用正在加速

## 技術重點總結

1. **經濟永續性需要精細的管理**：妥善的流動性配置、價格避險與儲備管理，是營運成功不可或缺的條件
1. **使用者體驗驅動採用**：消除 gas token 摩擦可以大幅提升轉換率
1. **選擇彈性具有可量化的價值**：部署後仍能調整 gas token 策略的能力，足以正當化 AA 帶來的額外複雜度

## 常見問題

**問：什麼是 custom gas token（CGT）？**

答：Custom gas token 讓任何 ERC-20 代幣都能用來支付區塊鏈上的交易手續費，取代在協定層或應用層需要使用 ETH 或鏈原生代幣的要求。

**問：gas token 可以在部署後更換嗎？**

答：Native 實作在創世後即不可更改。Account Abstraction 實作則支援在不修改協定的情況下進行執行期調整。

**問：目前哪些鏈支援 custom gas token？**

答：Arbitrum Orbit、zkSync Era 與 Avalanche L1s 提供原生支援。所有 EVM 鏈皆可透過 ERC-4337 支援基於 AA 的實作。

**問：營運成本有多少？**

答：在 native 實作中，流動性管理、價格滑點與營運緩衝，預估會產生 10-20% 的額外成本。AA 每筆交易會增加約 21,000 gas，但可省去流動性管理的額外負擔。

## 結語

Custom gas token 是區塊鏈架構中一項根本性的原語——這是會影響生態系經濟、使用者採用及長期永續性的策略性選擇。要成功實作，需要同時理解技術實作細節與經濟面的影響。

隨著區塊鏈基礎設施持續成熟，custom gas token 將從差異化功能轉變為標準功能。最終勝出的，會是那些能以使用者體驗為核心，打造出周全代幣經濟系統的團隊。區塊鏈的未來，正日益朝向由 custom gas token 所支撐、擁有自主貨幣政策的生態系發展。

透過 [Alchemy Rollups](/rollups) [部署 custom gas token](https://www.alchemy.com/docs/reference/customizations-integrations#1-rollup-configuration)，或隨時[與我們的團隊聯繫](/contact-sales-rollups)，我們樂意為你提供協助。
