GasTab

Session-based gas payments for Web3. Open a tab, use any dApp, settle once with stablecoins.

GasTab

Created At

ETHGlobal New York 2025

Project Description

Gas Tab revolutionizes Web3 UX by introducing session-based gas payments - the first protocol that lets users open a "gas tab" with spending limits, use any dApp normally, and settle everything at once with a single stablecoin permit.

The Problem: Current Web3 requires users to approve gas for every single transaction, creating massive friction. Users constantly worry about gas costs, get surprised by fees, and face complex multi-step approval flows.

Our Solution: Gas Tab works like a credit card for gas fees. Users open a session with a spending cap (e.g., $5 for 5 minutes), then use any dApp without thinking about gas. All transactions are tracked in real-time, and users settle the total with one PYUSD permit at the end.

Key Innovation: Instead of per-transaction gas payments, we've created the first session-based gas tracking protocol. This transforms Web3 from "pay-per-click" to "tab-based" UX, similar to how restaurants let you run a tab instead of paying for each drink.

Real-World Impact: Makes Web3 accessible to mainstream users by eliminating gas friction while providing spending controls and transparency. Perfect for DeFi power users, Web3 gaming, and onboarding new users.

How It's Made Core Architecture:

Smart Contracts (Solidity): SessionManager contract deployed on Arbitrum Sepolia handles session lifecycle - opening sessions with caps/expiry, tracking spending, and settlement

Frontend (React + TypeScript): Built with Vite, Wagmi v2, and Tailwind CSS for a beautiful, responsive interface

The Graph Protocol: Custom subgraph indexes all SessionOpened, Charged, and SessionClosed events for real-time analytics and session history

Technical Implementation:

Session Management: Users call openSession(capUsd, ttl, chains) to create a tracked session with spending limits

Real-time Tracking: Each dApp transaction triggers charge(sessionId, txHash, chainId, quotedUsd) to update spending

Settlement: Single closeSession() call settles the entire tab with PYUSD permit (EIP-2612)

Cross-chain Ready: Architecture supports tracking gas across multiple chains in one session

Notable Technical Achievements:

Event-driven Architecture: Smart contract emits events that trigger both subgraph indexing and frontend updates

Real Session IDs: Frontend extracts actual session IDs from transaction logs using parseEventLogs for proper state management

Gas Estimation Integration: Simulates real dApp usage with actual transaction costs

Production Deployment: Fully deployed and working on Arbitrum Sepolia with live subgraph indexing

Partner Technologies:

The Graph: Provides decentralized data indexing for session analytics - enables historical session queries and real-time spending dashboards

Arbitrum: Low-cost L2 perfect for micro-transactions and session management

Wagmi: Modern Web3 React hooks for seamless wallet integration

Hacky but Cool Details:

Built session-based UX patterns that don't exist in Web3 yet - created new mental models for gas payments

Real-time UI updates triggered by blockchain events, not just local state

Simulates multi-dApp usage in one session - shows the power of session-based tracking across protocols

This is genuinely novel Web3 infrastructure - nobody has built session-based gas tracking before. It's like inventing the credit card for Web3 transactions.

for partner technologies, lets also mention coinbase cdk, the grapgh and paypal usd

How It's Made Core Architecture:

Smart Contracts (Solidity): SessionManager contract deployed on Arbitrum Sepolia handles session lifecycle - opening sessions with caps/expiry, tracking spending, and settlement

Frontend (React + TypeScript): Built with Vite, Wagmi v2, and Tailwind CSS for a beautiful, responsive interface

The Graph Protocol: Custom subgraph indexes all SessionOpened, Charged, and SessionClosed events for real-time analytics and session history

Technical Implementation:

Session Management: Users call openSession(capUsd, ttl, chains) to create a tracked session with spending limits

Real-time Tracking: Each dApp transaction triggers charge(sessionId, txHash, chainId, quotedUsd) to update spending

Settlement: Single closeSession() call settles the entire tab with PYUSD permit (EIP-2612)

Cross-chain Ready: Architecture supports tracking gas across multiple chains in one session

Notable Technical Achievements:

Event-driven Architecture: Smart contract emits events that trigger both subgraph indexing and frontend updates

Real Session IDs: Frontend extracts actual session IDs from transaction logs using parseEventLogs for proper state management

Gas Estimation Integration: Simulates real dApp usage with actual transaction costs

Production Deployment: Fully deployed and working on Arbitrum Sepolia with live subgraph indexing

Partner Technologies:

The Graph: Provides decentralized data indexing for session analytics - enables historical session queries, real-time spending dashboards, and cross-session analytics. Critical for making session data queryable and building user spending insights.

Coinbase CDK (Coinbase Developer Kit): Powers wallet connectivity and transaction management through Wagmi integration, enabling seamless onboarding and transaction signing for mainstream users.

PayPal USD (PYUSD): Used as the settlement currency for gas tab payments - users can settle their entire session spending with a single PYUSD permit transaction, providing familiar stablecoin UX for gas payments instead of volatile ETH.

Arbitrum: Low-cost L2 perfect for micro-transactions and session management

Hacky but Cool Details:

Built session-based UX patterns that don't exist in Web3 yet - created new mental models for gas payments

Real-time UI updates triggered by blockchain events, not just local state

Simulates multi-dApp usage in one session - shows the power of session-based tracking across protocols

Integrates PYUSD permits for gasless settlement - users approve once and settle their entire tab

This is genuinely novel Web3 infrastructure - nobody has built session-based gas tracking before. It's like inventing the credit card for Web3 transactions, powered by The Graph's indexing, Coinbase's developer tools, and PayPal's stablecoin.

How it's Made

Core Architecture:

Smart Contracts (Solidity): SessionManager contract deployed on Arbitrum Sepolia handles session lifecycle - opening sessions with caps/expiry, tracking spending, and settlement

Frontend (React + TypeScript): Built with Vite, Wagmi v2, and Tailwind CSS for a beautiful, responsive interface

The Graph Protocol: Custom subgraph indexes all SessionOpened, Charged, and SessionClosed events for real-time analytics and session history

Technical Implementation:

Session Management: Users call openSession(capUsd, ttl, chains) to create a tracked session with spending limits

Real-time Tracking: Each dApp transaction triggers charge(sessionId, txHash, chainId, quotedUsd) to update spending

Settlement: Single closeSession() call settles the entire tab with PYUSD permit (EIP-2612)

Cross-chain Ready: Architecture supports tracking gas across multiple chains in one session

Notable Technical Achievements:

Event-driven Architecture: Smart contract emits events that trigger both subgraph indexing and frontend updates

Real Session IDs: Frontend extracts actual session IDs from transaction logs using parseEventLogs for proper state management

Gas Estimation Integration: Simulates real dApp usage with actual transaction costs

Production Deployment: Fully deployed and working on Arbitrum Sepolia with live subgraph indexing

Partner Technologies:

The Graph: Provides decentralized data indexing for session analytics - enables historical session queries, real-time spending dashboards, and cross-session analytics. Critical for making session data queryable and building user spending insights.

Coinbase CDK (Coinbase Developer Kit): Powers wallet connectivity and transaction management through Wagmi integration, enabling seamless onboarding and transaction signing for mainstream users.

PayPal USD (PYUSD): Used as the settlement currency for gas tab payments - users can settle their entire session spending with a single PYUSD permit transaction, providing familiar stablecoin UX for gas payments instead of volatile ETH.

Arbitrum: Low-cost L2 perfect for micro-transactions and session management

Hacky but Cool Details:

Built session-based UX patterns that don't exist in Web3 yet - created new mental models for gas payments

Real-time UI updates triggered by blockchain events, not just local state

Simulates multi-dApp usage in one session - shows the power of session-based tracking across protocols

Integrates PYUSD permits for gasless settlement - users approve once and settle their entire tab

background image mobile

Join the mailing list

Get the latest news and updates