Getting Started with Turbo
Upload data using Turbo, an ar.io gateway run by the ArDrive team. Turbo handles the infrastructure so you can focus on shipping.
What is Turbo?
Turbo is an ar.io gateway run by the ArDrive team. It serves permanent data like any ar.io gateway, and it adds paid uploads: it bundles your files into ANS-104 data items, issues the credits you pay with, and posts the data permanently to Arweave.
How the pieces fit. ar.io is the network: gateways serve and index permanent data, ArNS names it, and anyone can run a gateway. Turbo is one of those gateways, at turbo-gateway.com, run by the ArDrive team with uploads and payments attached. ArDrive is the app built on it. Arweave is the storage layer underneath, where the data ends up.
So the part that makes Turbo different from a gateway you run yourself is not reading, which it does the same way: it is that Turbo accepts paid uploads, and carries the funding, performance tuning and operational complexity that come with them.
Turbo supports flexible payment options, including fiat and major cryptocurrencies, and is built to handle high-throughput workloads with consistent performance. Whether you’re prototyping or running production systems, Turbo provides a reliable upload layer backed by enterprise-grade infrastructure.
If you’re looking for a managed upload service tailored to your use case — including custom limits, performance, or integration support — book a call to learn how we can get one set up for you: Contact Us!
Get Started
Install the SDK
npm install @ardrive/turbo-sdkSet Up Your Wallet
Create a new wallet or use an existing one:
# Create a new wallet (easy way)
npx permaweb/wallet > key.jsonThen load it in your code:
import { TurboFactory, ArweaveSigner } from "@ardrive/turbo-sdk";
import fs from "fs";
// Load your wallet
const jwk = JSON.parse(fs.readFileSync("./key.json", "utf-8"));
const signer = new ArweaveSigner(jwk);
// Initialize Turbo
const turbo = TurboFactory.authenticated({ signer });Get Turbo Credits
Purchase Turbo Credits to pay for uploads. When you upload, credits are automatically used and Turbo handles the payment to Arweave.
Option 1: Via the Web Interface
- Go to console.ar.io/topup
- Pay with fiat currencies (credit cards) or crypto tokens (ARIO, USDC, SOL, ETH, POL, AR)
Option 2: Via the SDK
// Purchase credits programmatically
const fundResult = await turbo.topUpWithTokens({
tokenAmount: TOKEN_AMOUNT,
tokenType: "solana", // or 'ethereum', 'matic', 'arweave'
});Check Your Balance
const balance = await turbo.getBalance();
console.log(`Balance: ${balance.winc} winc`);Upload Your Data
const fileData = fs.readFileSync("./myfile.jpg");
const result = await turbo.upload({
data: fileData,
dataItemOpts: {
tags: [
{ name: "Content-Type", value: "image/jpeg" },
{ name: "Title", value: "My Image" },
],
},
});
console.log("Upload ID:", result.id);
console.log("Owner:", result.owner);Advanced Features
Turbo Credits System
Learn about our flexible payment system that supports multiple currencies and payment methods.
Data Organization
- Tagging - Organize your data with metadata
- Manifests - Create folder structures and bundles
- Encryption - Secure your sensitive data
- ArFS - File system protocol for structured storage
Production Ready
Turbo implements the ANS-104 bundling specification, providing enterprise-grade infrastructure for permanent data storage.
Perfect for: Developers, production applications, high-volume uploads, and any project needing reliable permanent storage with flexible payment options.
| Feature | Turbo Bundling | Alternative Options |
|---|---|---|
| Payment Options | Fiat, ARIO, USDC, SOL, POL, AR | AR tokens only |
| Implementation | Simple SDK integration | Manual transaction handling |
| Performance | Optimized bundling & retry logic | Depends on implementation |
| Reliability | Built-in redundancy | Manual error handling |
| Cost | Optimized for large uploads | Higher per-transaction costs |
| Setup Complexity | Easy with SDK | Complex protocol knowledge |
Need help deciding? Most developers should use Turbo for its simplicity and payment flexibility. Only consider alternatives for specialized use cases requiring maximum control.
Ready to Get Started?
Launch ar.io Console
Start building with Turbo's powerful bundling service.
Turbo SDK Documentation
Explore the full SDK documentation and examples.
Learn About Tagging
Organize your data with metadata and tags.
How is this guide?
Upload Data
Start uploading to Arweave's permanent storage network with our recommended tools and best practices
Upload and Verify
Upload one file through Turbo, fetch it back from an ar.io gateway, and prove the bytes match: the smallest complete workflow, with what it costs, what it prints, and when to stop