Large test files (1 KB to 250 MB) — free download

A size ladder from 0 bytes to 250 MB as stored files, and anything up to 2 GB streamed on demand. Use these for upload limits, progress bars, timeout handling and resumable-download testing — the file host supports HTTP Range requests.

Need a specific size?

Streamed on demand — nothing stored, no signup, any size up to 2 GB.

10 MB100 MB500 MB1 GB2 GB

12 ready-made large file test files

FileSizeWhat it catches
0b.bin0 bytesZero-byte file. The single most under-tested upload case: many validators check the MIME type and extension but never assert size > 0, so an empty file passes and breaks downstream processing.download
1b.bin1 bytesOne byte. Catches off-by-one buffer maths and code that treats a 1-byte read as EOF.download
512b.bin512 bytesUpload and download size-limit boundaries. Incompressible, so transfer-encoding gzip gives no free win and measured throughput reflects real bandwidth.download
1kb.bin1.0 KBUpload and download size-limit boundaries. Incompressible, so transfer-encoding gzip gives no free win and measured throughput reflects real bandwidth.download
10kb.bin10.0 KBUpload and download size-limit boundaries. Incompressible, so transfer-encoding gzip gives no free win and measured throughput reflects real bandwidth.download
100kb.bin100 KBUpload and download size-limit boundaries. Incompressible, so transfer-encoding gzip gives no free win and measured throughput reflects real bandwidth.download
1mb.bin1.0 MBUpload and download size-limit boundaries. Incompressible, so transfer-encoding gzip gives no free win and measured throughput reflects real bandwidth.download
5mb.bin5.0 MBUpload and download size-limit boundaries. Incompressible, so transfer-encoding gzip gives no free win and measured throughput reflects real bandwidth.download
10mb.bin10.0 MBUpload and download size-limit boundaries. Incompressible, so transfer-encoding gzip gives no free win and measured throughput reflects real bandwidth.download
50mb.bin50.0 MBUpload and download size-limit boundaries. Incompressible, so transfer-encoding gzip gives no free win and measured throughput reflects real bandwidth.download
100mb.bin100 MBCrosses the default body limit of most reverse proxies. Nginx defaults to client_max_body_size 1m, so anything above that needs explicit configuration.download
250mb.bin250 MBLarge enough to force multipart or chunked upload paths and to make timeout configuration visible.download

Every file is generated from source — no third-party copyright — and each has its own page with a published SHA-256 you can verify after download.

Questions

Where can I download a large file for upload testing?

Pick a size from the ladder below, or use a generator link for 500 MB, 1 GB or 2 GB. Nothing is stored for the generated ones — the bytes are streamed as you download.

Do you have a 1 GB test file?

Yes, via the generator — it streams 1 GB on demand. Stored files stop at 250 MB because anything larger is cheaper and faster to stream.

Can I resume a partial download?

Yes. The file host supports Range requests, so resumable and chunked downloads work and can be tested directly.

Is there a zero-byte file?

Yes — exactly 0 bytes. It is the fastest way to find upload validators that check MIME type but never check size > 0.

Other formats

Sample GeoJSON, GPX and KML filesSample HTML, CSS and JS filesSample EML and MSG email filesSample EPUB fileSample PSD, DXF, STL and OBJ filesSample 7z, TAR and GZIP filesSample CSV fileSample JSON file