Sitemap
Ancilar | Blockchain Services

Ancilar | Blockchain Services

Insights for founders on building products, integrating AI, and scaling with the right tech. AI | Product | Cloud | Blockchain | Tech Talent

Gasless Transaction UX in Web3: A Frontend-Focused Guide

3 min readAug 6, 2025

--

Press enter or click to view image in full size

Introduction

Click “Submit” on a DApp, and boom — no MetaMask popup, no gas prompt, no panic. Users think it’s magic. Developers know it’s meta-transactions.

In this guide, we’ll walk you through how to implement gasless transactions from the frontend side. Because yes, we’re still explaining in 2025 that your users don’t want to pay gas just to say “Hi” on-chain.

We’ll go over:

  • What gasless transactions actually are
  • How to implement them on the frontend (with code)
  • What could go wrong (and how to not get rekt)
  • Final thoughts

What Are Gasless Transactions?

Let’s be honest: asking new users to “please buy ETH first” is not the warmest welcome. Enter gasless transactions.

Also called meta-transactions, they let the user sign a message instead of broadcasting a transaction. A relayer (run by you or someone you trust) takes care of gas and sends it on-chain. The user? Blissfully unaware.

It looks like this:

  • User signs a message
  • You forward it to a relayer
  • Relayer sends it on-chain and pays the gas

This way, your app works like Web2. But better.

Get Ancilar | Blockchain Services’s stories in your inbox

Join Medium for free to get updates from this writer.

Common tools:

  • Biconomy (fast and fairly easy)
  • Gelato Relay (more dev control)
  • OpenZeppelin’s MinimalForwarder (DIY kit)

Frontend Example Using Biconomy

Let’s roll up our sleeves and implement a gasless token transfer using Biconomy + ethers.js.

Prerequisites

  • React + ethers.js
  • MetaMask installed
  • Smart contract that supports EIP-2771
  • Biconomy account and API key

1. Install Dependencies

npm install @biconomy/mexa ethers

2. Initialize Biconomy

import { Biconomy } from "@biconomy/mexa";
import { ethers } from "ethers";
import { useEffect } from "react";
const BICONOMY_API_KEY = "your-api-key";
const CONTRACT_ADDRESS = "0xYourContract";
const provider = new ethers.providers.Web3Provider(window.ethereum);
const biconomy = new Biconomy(window.ethereum, {
apiKey: BICONOMY_API_KEY,
debug: true
});
const signer = provider.getSigner();

3. Wait for Biconomy to Initialize

useEffect(() => {
biconomy.onEvent(biconomy.READY, async () => {
const contractInterface = new ethers.utils.Interface(Your_ABI_HERE);
const contract = new ethers.Contract(
CONTRACT_ADDRESS,
contractInterface,
biconomy.getSignerByAddress(await signer.getAddress())
);
const tx = await contract.transfer("0xRecipient", ethers.utils.parseUnits("1", 18));
console.log("Transaction Hash:", tx.hash);
}).onEvent(biconomy.ERROR, (error, message) => {
console.error("Biconomy Error", error, message);
});
}, []);

Congrats, you just let a user send tokens without touching ETH. Feels like cheating? It’s not. It’s progress.

Security Considerations

Yes, gasless sounds nice. But please don’t YOLO it into production without thinking.

Signature Spoofing

Always verify the signature on-chain using ecrecover or go with something safer like OpenZeppelin’s MinimalForwarder.

Trusting the Relayer

If someone else is relaying, you better trust them. If you run the relayer, log everything. Rate limit it. Lock it down.

Replay Attacks

Every signed message should include a nonce. Otherwise, someone could replay your user’s signature forever. Not cool.

Data Integrity

Once signed, do not modify the payload. The whole point is that the signature matches the data. Any tampering breaks it — and breaks trust.

Conclusion

Gasless transactions are not a gimmick. They solve real user pain.

Want more people using your app? Don’t make them buy gas first. Just let them do the thing. With tools like Biconomy or a custom relayer, frontend developers can make DApps that feel fast, smooth, and invisible to non-crypto natives. If you’re still asking users to “add Polygon RPC” or “hold ETH to transact”… it’s time for an upgrade.

Additional Resources

Let’s build something incredible together.
Email us at hello@ancilar.com
Explore more: www.ancilar.com

--

--

Written by Ancilar | Blockchain Services

Insights for founders on building products, integrating AI, and scaling with the right tech. AI | Product | Cloud | Blockchain | Tech Talent