20 MB XML sample

An XML file of exactly 20,971,520 bytes. It is a valid Extensible Markup Language file, generated by this site. Compare its checksum and test it with the parser used by your application. Use it wherever you need a 20 MB sample, test or dummy XML file.

Download

sample-xml-20mb.xml

20 MB20,971,520 bytes

Download 20 MB XML

Created in your browser in a few seconds, then checked against the SHA-256 checksum. No sign-up.

Type
application/xml
SHA-256
69add2f03a0f76081a3c92c06e916ed001e1e6f6cb338bb86059e9f74794e1e3
Delivery
Created in your browser from static generator assets (how it works).

What is in this file

A <customers> root element holding 64,904 fictional records that mix child elements, attributes and an empty element. An XML comment before the closing tag brings the file to the exact size.

Elements64,904 <customer> records
Root element<customers>
DeclarationXML 1.0, UTF-8
EncodingUTF-8 (ASCII characters only)
Line endingsLF

How the file begins

The opening lines of sample-xml-20mb.xml, exactly as they appear in the file.

00000000  3c 3f 78 6d 6c 20 76 65  72 73 69 6f 6e 3d 22 31 |<?xml version="1|
00000010  2e 30 22 20 65 6e 63 6f  64 69 6e 67 3d 22 55 54 |.0" encoding="UT|
00000020  46 2d 38 22 3f 3e 0a 3c  63 75 73 74 6f 6d 65 72 |F-8"?>.<customer|
00000030  73 20 67 65 6e 65 72 61  74 6f 72 3d 22 53 61 6d |s generator="Sam|

Preview

Creates the file in your browser and shows its first 64 KB.

Where 20 MB matters

A 20,971,520-byte file: right at the default attachment limit of Outlook, and just under the 25 MB ceilings of Gmail and GitHub web uploads. These are the default limits a file of this size is useful for testing:

SystemLimitNote
Microsoft Outlook20 MB of attachments by default for internet mail accountsThis file is right at the limit; add a second attachment and it is exceeded.
Gmail25 MB per messageUnder the limit, although email encoding adds about a third in transit.
GitHub web uploads25 MiB per file added through the browserAccepted. Pushing with Git allows larger files.
Cloudflare Pages assets25 MiB per fileThe largest round size that can be served as a static asset.
Amazon API Gateway10 MB payloadRejected; the upload has to go directly to object storage.
ASP.NET Core (Kestrel)About 28.6 MB request body by defaultAccepted with room for the multipart overhead.

All 20 MB sample files

Use this file for

  • Measuring download speed from your own server or CDN
  • Testing feed readers and SOAP clients
  • Testing XML parsers and data import

Testing notes for XML

  • Namespaces change element identity: <name> in two namespaces is two different elements.
  • Parsers that resolve external entities can be made to read local files or call internal services, an attack called XXE. Disable DTD processing for untrusted input.

XML format reference

Technical details

File namesample-xml-20mb.xml
FormatXML (Extensible Markup Language)
Extension.xml
MIME typeapplication/xml
Size20,971,520 bytes (20 MB)
KindText
Signature3C 3F 78 6D 6C
SHA-25669add2f03a0f76081a3c92c06e916ed001e1e6f6cb338bb86059e9f74794e1e3
Created2026-10-23
ValidationSee the listed size and SHA-256. Small downloads are checked in the browser; verify streamed downloads manually. A hash match does not prove parser compatibility.
PreviewAvailable on this page
SourceGenerated in your browser by this site's generator; not copied from elsewhere
LicenceFree to use, modify and redistribute (terms)
CategoryData

Check the stated structure and checksum against your application requirements. As with any download, scan the file with your own security tools before opening it. How files are made and checked

Verify your copy

This file is created in your browser, so it has no direct URL for curl or wget. The generator is designed to produce reproducible bytes. After saving, compare the checksum with the SHA-256 value above.

sha256sum sample-xml-20mb.xml     # Linux
shasum -a 256 sample-xml-20mb.xml # macOS

On Windows, run Get-FileHash sample-xml-20mb.xml -Algorithm SHA256 in PowerShell. For scripts and pipelines, save the file once and keep your own copy.

Related files

Questions about this file

Is this file exactly 20 MB?
Yes. It is 20,971,520 bytes, which is 20 MB in the binary units that operating systems and server limits use (1 KB = 1,024 bytes).
What is inside the 20 MB XML file?
A <customers> root element holding 64,904 fictional records that mix child elements, attributes and an empty element. An XML comment before the closing tag brings the file to the exact size.
Do the XML samples use a DTD or entities?
No. They have an XML declaration and no DOCTYPE, so they are safe for parsers with DTD processing disabled.