Tron Data: Index TRC-20 Transfers and Contract Events
Index Tron's TRC-20 transfers, contract events, and account activity in one pipeline, decoded and delivered to your own database. Real-time and complete historical data, no node or event plugin to run.
Tron is one of the two main settlement rails for USDT. TRC-20 USDT is the network's dominant asset, Tron holds close to half of all USDT in circulation, and it is one of the two largest USDT transfer networks, with blocks produced roughly every three seconds under its delegated proof-of-stake consensus. For anyone building payments, remittance, or exchange flows, the data that matters on Tron is TRC-20 transfers, contract events, and account activity at very high throughput. See it in their words at tron.network.
Indexing that volume is the hard part. Indexing Co indexes Tron's TRC-20 transfers, contract events, and account activity in a single pipeline, decodes the data into the shape you want, and delivers it to your own PostgreSQL, warehouse, or webhook. Real-time and full history, with no Tron node and no TIP-12 event plugin to operate.
Why Tron data is hard
What Indexing Co delivers for Tron
Stand up and maintain the whole stack yourself.
- Run a java-tron full node and keep it synced.
- Compile and configure the TIP-12 event plugin for Kafka or MongoDB.
- Operate the queue, the store, and historical backtracking yourself.
- Build backfill, decoding, and real-time delivery from scratch.
One pipeline, delivered to your store.
- TRC-20 transfers, contract events, and account activity in a single pipeline.
- Decoded data, shaped by your JavaScript transform.
- Lands in your PostgreSQL, BigQuery, warehouse, or webhook.
- Real-time delivery plus complete backfilled history. No node, no event plugin.
What you can index
| TRC-20 and Tokens | Contracts and Accounts |
|---|---|
| TRC-20 transfers (USDT and others) | Contract events and logs |
| TRC-10 token activity | Decoded contract calls |
| Token balances over time | Account activity and transactions |
| Mint, burn, and supply changes | Energy and bandwidth usage |
A transform, not a subgraph
You write the transform in JavaScript, not AssemblyScript, and change it without re-indexing from block zero. Indexing Co runs your function over each block server-side: decode the events or instructions you care about and return rows for your destination.
// Indexing Co transform: TRC-20 transfers (USDT and others) as rows; Tron addresses arrive in 0x hex form
function transform(block) {
const results = [];
const signatures = [
'event Transfer(address indexed from, address indexed to, uint256 value)'
];
for (const tx of block.transactions || []) {
for (const log of tx.receipt?.logs || []) {
const event = utils.evmDecodeLogWithMetadata(log, signatures);
if (!event) continue;
results.push({
chain: block._network,
block: Number(block.number),
tx_hash: tx.hash,
contract_address: log.address?.toLowerCase(),
from: event.decoded.from,
to: event.decoded.to,
value: event.decoded.value,
});
}
}
return results;
}
Tron with Indexing Co
You want full control of node infrastructure and have the team to operate a java-tron node, the TIP-12 event plugin, and the Kafka or MongoDB pipeline behind it.
You want TRC-20 transfers, contract events, and account activity decoded and delivered to your own database for payments reconciliation and analytics, with real-time plus complete history and no infrastructure to run.
Related Reading
- Payments Data Infrastructure
- Fintech Data Infrastructure
- Subgraph Migration: Moving Off The Graph's Hosted Service
- Indexing Co vs Subgraphs
FAQ
Do I need to run a Tron node or the TIP-12 event plugin?
No. Indexing Co handles sourcing from Tron, including the event stream and historical blocks, so you do not run a java-tron node or compile and operate the TIP-12 event plugin.
Can Indexing Co handle Tron's USDT transfer volume?
Yes. The pipeline is built to capture high-throughput TRC-20 transfers in real time without falling behind the chain head, which is exactly the load USDT settlement on Tron produces.
Can I get complete historical Tron data?
Yes. We backfill history and merge it with real-time data so your TRC-20 transfer and event dataset is gap-free from your chosen start block, which is what payments reconciliation requires.
Where does the Tron data go?
Into your own destination: PostgreSQL, BigQuery, a warehouse, or a webhook. You define the output schema and own the storage.
Is this a good fit for payments and reconciliation?
Yes. Indexing TRC-20 transfers, contract events, and account activity into your own database is well suited to payments analytics and reconciliation, where you need a complete, owned ledger rather than rate-limited API calls.
Get Started
Index Tron in minutes. Set up your first TRC-20 transfer or contract event pipeline without running a node.