HTTrack Website Copier icon

HTTrack Website Copier 3.50-5

HTTrack Website Copier saves linked website pages and resources for offline browsing. It provides crawl filters, resumable projects, mirror updates and web archive output on Windows, Linux, macOS and Unix-like systems.

Updated October 2, 2026
9.79 MiB (10264992 B)
0.0

Use the arrow keys to choose a rating, then press Enter or Space to submit it.

Not rated yet 0 user ratings

App Specs

DeveloperXavier Roche and other contributors
LicenseFreeware
CategoryInternet
Available platformsWindows, macOS, Linux, Android
Downloads6

Overview

HTTrack Website Copier is a free, open-source program for saving websites to a computer and browsing their pages offline. It downloads HTML, images and other linked files, then adjusts the links between saved pages so they open from the local copy. HTTrack runs on Windows, Linux, macOS and other Unix-like systems, with a native Windows interface called WinHTTrack, a web interface called WebHTTrack, and a command-line program.

Offline Mirrors

A mirror begins with one or more website addresses and a project folder. HTTrack follows links from those starting pages, retrieves the resources within the chosen scope, and builds a local directory tree. Several sites can belong to one project, retaining links between the pages copied from them.

The default layout follows the website's folders and filenames. Alternative layouts can group files by type or create names from parts of their original addresses. An index page provides an entrance to the saved sites. Because links between mirrored pages are relative, the project folder can be moved to another drive or computer and read in a browser without HTTrack installed. Links to material outside the mirror can instead lead to a notice that an Internet connection is needed.

HTTrack saves the pages a server sends, including HTML generated by server-side applications; it does not retrieve the application's source code. It parses pages and stylesheets and looks for addresses in scripts, but does not execute JavaScript. An image address present in the page's markup can be discovered, while an address assembled only when a script runs can be missing. The resulting mirror therefore cannot reproduce every function of an interactive website.

Crawl Scope

Scan rules decide which addresses HTTrack may include or exclude. A rule can target a host, a directory or a file type, allowing a particular website section to be copied while another is omitted. Rules are evaluated in order, with the last matching rule taking precedence. An inclusion adds to the crawl's normal scope; it does not by itself exclude everything else.

This control also applies to resources hosted elsewhere. Images or stylesheets on another host may need an explicit inclusion, or the option that retrieves non-HTML resources associated with followed links. Directory travel and link-depth settings further define how far the crawl can move from its starting addresses. HTTrack can also take starting URLs from a sitemap, reaching listed pages that ordinary page links do not reveal while still applying the project's scope and filters.

For a smaller task, the individual-file action retrieves only the addresses supplied and follows no further links. Another action mirrors the sites linked from a page, which can use a saved bookmarks page as its starting collection. Link testing checks whether destinations resolve without saving a website copy.

Crawl Limits

HTTrack lets the user cap the total transferred data, individual file sizes and overall running time. Transfer-rate and connection controls govern how much network activity the crawl produces, while timeouts and retry settings determine how it handles a server that stops responding. The engine follows a website's robots.txt crawling rules by default.

During a mirror, the interface reports transferred bytes, scanned links, transfer rate and errors, with individual transfers shown as they run. A transfer can be cancelled separately from the whole project, and connection counts and limits can be adjusted during the job. Log files record failures and excluded or redirected addresses, helping explain why a particular page or image was not saved.

Mirror Updates

Each project retains a cache containing the fetched addresses and crawl settings. Continuing an interrupted mirror uses that cache to rebuild the crawl's working state and proceed with unfinished work. Updating is a different operation: HTTrack checks the existing resources with the server and downloads changed responses rather than treating the project as a new copy. The cache must remain available for either operation.

An update normally removes local files that are no longer part of the mirror. The option to keep old files preserves those items instead. HTTrack can also produce a JSON change report that separates new, changed, unchanged and removed files. This report compares content, so a fresh server response with identical bytes remains unchanged even if the server presents it as new.

Archive Formats

Alongside the browsable directory tree, HTTrack can write a WARC archive containing fetched responses and their headers. The archive preserves what the server returned, while the mirror contains pages whose links have been adjusted for local browsing. Archive naming and segment limits control how those records are stored. A CDXJ index lists the captures for replay tools, and WACZ packaging combines the WARC, its index and the mirrored pages in one file.

For individual pages, HTTrack can embed stylesheets, scripts, images and fonts into each saved HTML file. This allows a page to carry those resources with it instead of relying on separate asset folders. Links between pages remain relative, and audio, video and assets above the chosen embedding limit remain linked. A separate MHT option packages the whole mirror as a MIME archive rather than embedding shared resources into every page.

Website Access

HTTrack can send HTTP Basic authentication credentials and use cookies for pages that require a session. A Netscape-format cookie file supplies an existing session to the crawl, while its request-capture function can record a browser's form submission for replay. HTTP Digest authentication is not supported.

HTTP, CONNECT and SOCKS5 proxy settings route the crawl through a chosen proxy. Request settings can also select a preferred language or browser identity when a website serves different content according to those headers. The same crawl engine is available from the command line, allowing these controls, filters and update actions to be used in scripts as well as through the graphical interfaces.

Key Features

  • Recursive website copying with HTML, images, and supporting files
  • Relative-link organization for browsing a local mirror
  • Update existing mirrors and resume interrupted downloads
  • Graphical interfaces and a command-line copying engine
  • WARC archive output
  • Desktop and Android editions

Similar Apps