Multipart Upload Planner for Large Files

Plan a Multipart Upload: Part Size, Parallel Upload, Retries, Resume

Size the parts, the parallel upload width, and the retry cost before you write the client — then ship it against a large file upload API with resumable multipart built in.

Free multipart upload planner

A multipart upload is not one big request — it is a file cut into numbered parts, each uploaded on its own, then reassembled server-side into a single object. That buys you three things a single PUT cannot: parallel upload of several parts at once so a slow uplink is not idle waiting on latency, a retry that re-sends one part instead of the whole file, and a resumable upload that survives a laptop lid closing mid-transfer.

The planner above turns that into numbers for your file: how many parts, how big the last one is, how many parallel rounds it takes, roughly how long it runs, and exactly what one failed part costs you to send again.

Chunk sizing is the decision people get wrong. Every part except the final one must be at least 5 MB, and no upload may exceed 10,000 parts, so the part size sets a hard ceiling on the file size you can move. Small parts mean more round-trips, more presigned URLs, and more bookkeeping in your client; large parts mean a single network blip re-sends more bytes. cdn22.net does not make you guess — the multipart endpoint presigns fixed 100MB parts, which puts a 10GB upload at 103 parts and keeps a 1TB file inside the 10,000-part ceiling.

Set the planner to 100MB to see what our API will actually do with your file, or change it to plan a client against any other S3-compatible large file upload API.

Retries, resumability, and integrity are the rest of the job. Retry an individual part with exponential backoff rather than restarting the transfer; hold on to the upload id and the part numbers you have already completed and the session is resumable. Each part carries an ETag, and the completion call validates the assembled object, so a truncated part fails the commit instead of landing as a silently corrupt file — but if the bytes genuinely matter, checksum the source before upload and verify after download, because that is the only end-to-end guarantee.

And abort what you abandon: an orphaned multipart session leaves parts in storage that still cost money. cdn22.net presigns part URLs for 24 hours, exposes an explicit abort endpoint, and sweeps sessions that can no longer be resumed.

The API is three calls with your raw API key in the Authorization header, no SDK: POST /v1/files/multipart/{folderId}/initiate returns an upload id, a file id, and one presigned URL per part; you PUT the part bytes yourself, in parallel, straight to storage; POST /v1/files/multipart/complete commits it, and POST /v1/files/multipart/abort cancels it. If your files are small enough not to need any of this, the simpler three-call flow on the file upload API page is the one to build against, and the cloud file storage API page covers the full endpoint surface.

What happens after the last part lands is the part most upload guides skip. The assembled file is stored as one object, and in a public folder it already has its permanent CDN link — no publish step, no separate copy into a delivery bucket. Private files stay private and are read through short-lived signed URLs your backend mints.

So the same pipeline that ingests a 40GB master or a nightly build artifact also serves it globally, which is the whole reason to put large-file ingestion and CDN delivery behind one API instead of stitching a bucket to a distribution yourself. For sending those files onward see large file transfer; to allow clients to upload files to you without building an uploader, see file request links.

Benefits With No Complexity

Global CDN delivery

Your files are served from 450+ edge locations worldwide.

Edge-cached worldwide

Files are cached close to your users for fast delivery.

Signed-URL security

Private files stay protected with time-limited access.

What You Get

Unlimited files

Upload as many files as you need.

Unlimited storage

There is no storage limit.

Public + Private storage

Private files are fully secured.

CDN ready links

Upload directly to 450+ edge locations worldwide.

Prepaid credits

No subscription. Pay only for the storage and bandwidth you use.

More coming soon

We have plenty of features coming!

How cdn22.net Works

1. Upload

Create a project and upload your first file.

2. Copy

Copy the CDN link.

3. Use Anywhere

Paste and enjoy the blazing speed.

Why Developers Choose cdn22.net

A Better Way to Store & Deliver Files

Google DriveDropboxcdn22.net
Built for developers & businesses
Global CDN Delivery
Signed URLs for secure access
Prepaid Credits
Simple REST API

Multipart Upload Planner

Size a multipart upload before you write the client: enter the file size, a target part size, how many parts you want in flight, and your uplink. You get the part count, the final part size, how many parallel rounds it takes, the wall clock, and what a single failed part costs you to re-send. Deterministic, no login, and nothing is uploaded.

Try a size
Parts to upload103102 full parts + a final 40.00 MB part
Rounds at 4 in parallel26
Wall clock at 100 Mbps14m
Re-sent per failed part100.00 MB (1.0%)
Retries at a 1% part failure rate~2

On cdn22.net, the multipart endpoint presigns parts for you at a fixed 100 MB, so this file would upload as 103 parts whatever you pick above. The part size control is here for planning your own client against any S3-compatible large file upload API.

Planning estimate only. Wall clock assumes your uplink is the bottleneck and ignores TLS handshakes, server-side commit time, and retries — parallel uploads hide per-part latency, they do not create bandwidth. Nothing here uploads a file or contacts an API.

The six decisions behind a large file upload

Decide whether you need multipart at all

Under a few hundred megabytes on a stable connection, a single presigned PUT is less code and fewer failure modes. Multipart earns its complexity when a dropped connection would otherwise cost you the whole transfer, or when the file is large enough that one PUT would sit open for many minutes.

Pick a part size

Every part except the last must be at least 5 MB, and no upload may exceed 10,000 parts. Small parts mean more requests and more bookkeeping; large parts mean a single failure re-sends more bytes. cdn22.net settles this for you at 100 MB per part.

Choose a parallel upload width

Parallel upload is what makes multipart fast: several parts in flight keep the pipe full while others wait on latency. It does not add bandwidth, so past roughly 4–8 concurrent parts you are usually just adding memory pressure and retry surface.

Plan retries and resumability

A failed part is one part re-sent, not the file. Retry the individual part with backoff and keep the upload id — that is what makes this a resumable upload. cdn22.net presigns part URLs for 24 hours, so a paused transfer can pick up the same session the next day.

Verify integrity, then commit

S3-compatible multipart records an ETag per part and the API validates the assembled object on completion, so a truncated part fails the commit instead of landing silently. Keep your own checksum of the source file if the bytes matter — a hash you computed before upload is the only end-to-end check.

Abort what you abandon

An abandoned multipart upload leaves parts in storage that you are still paying for. Call the abort endpoint when a user cancels. cdn22.net also sweeps unresumable multipart sessions automatically, but an explicit abort stops the meter immediately.

The cdn22.net multipart upload API, end to end

Three calls, authenticated with your raw API key in the Authorization header — no Bearer prefix, no SDK. Initiate returns an upload id and one presigned URL per part; you PUT the bytes for each part yourself, in parallel, straight to storage.

POST /v1/files/multipart/{folderId}/initiate
  { "fileMetadata": { "name": "release.tar.gz", "size": 10737418240 } }
  -> { "success": true, "data": { "uploadId", "fileId", "bucket", "key", "parts": [...] } }

PUT  <presigned part URL>            # one per part, run these in parallel

POST /v1/files/multipart/complete
  { "bucket", "key", "uploadId", "fileId", "partCount": 103 }

POST /v1/files/multipart/abort       # same identifiers, when the user cancels

When the upload completes, a file in a public folder already has its permanent CDN URL — the same bytes you just uploaded are served from the edge with no publish step. Private files stay private and are reached through short-lived signed URLs your backend mints.

Upload a Large File the Multipart Way

  • Global CDN delivery
  • Edge-cached worldwide
  • Signed-URL security
  • Unlimited files
  • Unlimited storage
  • Public + Private storage
  • No subscription — prepaid credits keep spend predictable
Start Uploading Large Files

Frequently Asked Questions

What is a multipart upload?
It is a file split into numbered parts that are uploaded independently and reassembled into one object server-side. The upload is initiated once, each part is PUT to its own presigned URL (in parallel if you want), and a completion call commits the assembled file. It exists so a large upload can retry one part instead of the whole file, and so several parts can be in flight at the same time.
When should I use multipart instead of a single PUT?
Roughly: when losing the transfer to a dropped connection would actually hurt. Under a few hundred megabytes on a stable link, one presigned PUT is less code and fewer failure modes. Above that — or on mobile, hotel Wi-Fi, or anything where a single request would stay open for many minutes — multipart is worth the extra bookkeeping. The planner flags the case where your file only produces one part, which means multipart is buying you nothing.
What part size should I use?
Every part except the last must be at least 5 MB, and an upload cannot exceed 10,000 parts, so part size sets the maximum file size you can move. Between those bounds it is a trade: smaller parts mean more requests but a cheaper retry, larger parts mean fewer requests but more bytes re-sent when one fails. cdn22.net presigns fixed 100MB parts, which handles files up to 1TB without you tuning anything.
Does parallel upload make it faster?
Up to a point. Running several parts at once keeps your uplink busy while other parts wait on latency and TLS handshakes, which is a real speedup on high-latency links. It does not create bandwidth — the wall clock in the planner is your file size over your uplink, and past roughly 4 to 8 concurrent parts you are mostly adding memory pressure and retry surface.
Is the upload resumable if my connection drops?
Yes, if your client keeps the upload id and the list of parts it has already finished. Re-upload only the missing parts, then call complete. cdn22.net presigns part URLs for 24 hours, so a transfer paused overnight can still finish on the same session. Sessions that can no longer be resumed are swept automatically, and you can end one yourself with the abort endpoint.
How is file integrity checked?
Each uploaded part gets an ETag, and the completion call validates the assembled object, so a truncated or missing part fails the commit rather than producing a silently corrupt file. That protects the assembly step, not your source file — if the contents matter, compute a checksum before uploading and verify it after downloading. That is the only end-to-end integrity check any upload API can give you.
What is the largest file I can upload?
1TB in a single file: 10,000 parts at the 100MB part size the API presigns. Past that, split the file — the planner shows an error and suggests a larger part size when your inputs exceed the part ceiling.
Do I have to build the multipart client myself?
For API uploads, yes — you PUT the parts, which is what makes the bytes go straight to storage instead of through our servers. It is a loop over presigned URLs with a retry, not a framework. If you would rather not write an uploader at all, the dashboard handles large uploads for you, and file request links let clients send you files without an account.
General Questions
Is there a subscription?
No. cdn22.net uses prepaid credits, so storage, bandwidth, and API usage are deducted from your balance as you go. The app explains the payment step before uploads are enabled — no monthly subscription and no per-user fees.
What is cdn22.net?
cdn22.net is a developer-first file platform that makes it simple to store, secure, and deliver files globally. It provides signed URLs, public/private access, and an API-first design so you can integrate file delivery into any app without the usual complexity.
How does billing work?
cdn22.net uses prepaid credits. As you use storage, bandwidth, and API requests, credits are deducted daily. When your balance runs low, we automatically recharge it using your saved card. If an auto-recharge doesn't go through, your files and links stay put — you simply update your payment method or top up manually to keep going. No monthly subscriptions — just simple usage-based pricing.
How secure is my data?
All files are encrypted at rest and in transit. You can use signed URLs for private files, control access with permissions, and rely on enterprise-grade infrastructure for data protection.

Related

cdn22.net
Copyright © 2026
All rights reserved
ContactGuidesGlossaryStatusLegal