Large files

10 GB test file: make one locally in seconds

Downloads here stop at 2 GB per file, and few sites host 10 GB at all, because every copy costs real bandwidth. You rarely need to download one: a single command makes it on your own machine, faster than any download. Which command depends on what you are testing.

Pick the right kind of file

KindMade inUse it forWatch out
SparseInstantSize checks, quota logic, anything that reads the size and not the bytesTakes no disk space until written; a copy or upload may expand it
Allocated zerosInstant to secondsDisk-full handling, storage quotasCompresses and deduplicates to almost nothing
Random dataAs long as the disk takes to write 10 GBUploads, transfers, backups, anything that compressesThe only kind that behaves like real media

The commands

All make exactly 10 GiB (10,737,418,240 bytes).

# Linux: sparse, instant
truncate -s 10G test-10gb.bin

# Linux: allocated zeros, instant on ext4 and XFS
fallocate -l 10G test-10gb.bin

# Linux and macOS: random data
dd if=/dev/urandom of=test-10gb.bin bs=1M count=10240

# macOS: instant, blocks not allocated until written
mkfile -n 10g test-10gb.bin

# Windows: zero-filled
fsutil file createnew test-10gb.bin 10737418240

More commands, including many small files and per-file unique content, are on generate test files from the command line.

Or join five downloads

Each generated 2 GB file is random data, and a different seed gives a different file, so five of them make 10 GiB that nothing can compress. This does download 10 GB, so it is only worth it when the data must be the same on every machine.

for i in 1 2 3 4 5; do
  curl -fsSL "https://gen.hexaqa.com/gen?type=bin&size=2gb&seed=$i"
done > test-10gb.bin

10 GB or 10 GiB?

The commands above make 10 GiB, 10,737,418,240 bytes, which is what Windows, macOS and most tools display as "10 GB". A limit written as 10 GB may mean 10,000,000,000 bytes, 7% less. When testing a limit, test both sides of both readings, as explained in large file upload testing.

Questions

Where can I download a 10 GB test file?

Downloads here stop at 2 GB. Make one locally with a command above, or join five 2 GB downloads.

How do I create a 10 GB file on Windows?

fsutil file createnew test-10gb.bin 10737418240, for a zero-filled file.

How do I create one on Linux or macOS?

truncate -s 10G test-10gb.bin on Linux, mkfile -n 10g test-10gb.bin on macOS, or dd from /dev/urandom for random data.

What is a sparse file?

A file whose empty regions use no disk space until written. It is created instantly, but a copy or upload may expand it.

Keep going

1 GB and 2 GB downloads More commands → Upload testing →

More from Learning

Guides and references for test data, file handling and AI evals. All free, no sign-up. See the full hub.

Synthetic data for AI evalsWhat you can download, what you buildRAG test corpusDocuments with extraction trapsJSONL for evalsThe format, and ten ways it breaksMock API for agentsRecords, pagination, failures on demandSafe test dataReserved domains, IPs, numbers & cardsSynthetic PIIFake people that reach nobodyTest card numbersEvery brand, declines, 3D SecureTest phone numbersReserved US, UK and Australian rangesReserved IP addressesDocumentation ranges and SSRF casesExample domains.test, .invalid, example.com, and trapsQA test stringsUnicode, emoji, injection & edge casesFilename compatibilityWhat breaks across Windows, Mac & LinuxFile systemsPOSIX, NTFS, APFS, ext4, SMB, NFS, NASFile signaturesMagic numbers that identify every formatCharacter encodingsUTF-8, UTF-16, BOM & normalizationUpload validationThe checklist, with a file for each checkMIME typesThe right Content-Type for every extensionHTTP status codesEvery code and when you actually see itDates & timesISO 8601, epoch, Excel serials, DSTHTTP headersContent-Type, Disposition, Range, CORSRegex cheat sheetSyntax, flags and ready-made patternsGenerate files (CLI)Make test files on any OSCrypto & certificatesSSL/PEM, hashing, encryptionWeb app testingWhat to test, with a file for each caseDesktop app testingPaths, names, encodings and savingMobile app testingPickers, photos, flaky networksCLI testingArguments, pipes and exit codesLarge file upload testingDefault limits, 413s and exact sizes1 GB test file1 GB and 2 GB, with SHA-256Download speed test files10 MB to 2 GB of random data