Archive format

WARC converter

A .warc file is a web archive: a sequence of records, each with plain-text headers and a payload, capturing what a crawler requested and exactly what came back. It is the format the Internet Archive's Wayback Machine is built on, and the standard for web preservation generally.

Private for supported formats — processed in your browser

Convert supported files

Runs on your device

Drop WARC files here

Batch files can each use a different output. Nothing uploads for local conversions.

Working inputs include camera RAW, browser-local audio/video, PDF, CBZ/CBR comics, office documents, ebooks, markup, 3D models, structured text, images, and archives.

Where WARC comes from

The Internet Archive's ARC format of 1996 stored crawled pages but not the HTTP exchange around them. The International Internet Preservation Consortium designed WARC as its successor, and it became ISO 28500 in 2009, revised in 2017. It is now what national libraries, the Internet Archive, Common Crawl and tools like wget, wpull and Browsertrix all produce — the point being to record enough that a page can be replayed as it was served, not merely as it was rendered.

How WARC works

  • Every record begins with a version line — `WARC/1.0` or `WARC/1.1` — followed by CRLF-terminated header fields and a `Content-Length`-delimited block.
  • Record types include `warcinfo` (about the capture), `request`, `response`, `resource`, `metadata`, `revisit` (a page unchanged since a previous crawl) and `conversion`.
  • `WARC-Target-URI` identifies what was captured, and `WARC-Record-ID` is a URN that other records point at, so a request and its response are linked.
  • Files are conventionally Gzip-compressed per record rather than as a whole, so a reader can seek to one record without decompressing everything before it.
  • A `response` record's block is the raw HTTP response — status line and headers included — not just the body, which is what makes faithful replay possible.

When to use WARC

  • Extracting captured pages and assets from a crawl
  • Auditing what a site actually served at a point in time
  • Working with Common Crawl or Internet Archive data
  • Converting a capture to ZIP so the individual resources can be opened normally

Strengths and limitations

Strengths

  • An ISO standard with institutional backing and decades of archived data behind it
  • Records the full HTTP exchange, so a capture can be replayed rather than merely read
  • Headers are plain text, so a file is partly comprehensible without any tooling

Limitations

  • Files are frequently enormous — a crawl segment runs to gigabytes
  • Replaying a capture faithfully needs software such as pywb or replayweb.page, not just an extractor
  • Writing WARC responsibly means recording provenance correctly, which is why this converter reads it and does not produce it

Compatibility

warcio, pywb, replayweb.page, wget and libarchive-based tools all read WARC. Novus Convert extracts records in the browser and writes ZIP, TAR or TAR.GZ; WARC output is deliberately not offered, because a generated capture would carry provenance headers that no crawl actually produced. Note that the reader accepts WARC/1.0, the revision libarchive supports.

Record headers, including the target URI and capture date, identify each extracted member; ZIP and TAR have no field to carry the remaining WARC headers, so they are reported rather than embedded.