Enter the address of a website – LinkScout crawls all its pages, checks every internal page, external link, image, PDF and download, and runs 48 SEO checks. It shows which external services the pages load, searches their content and can save complete websites for offline use.
Free and open source (MIT) · Linux and macOS (Apple Silicon) · runs locally, no account, no cloud
LinkScout behaves like a browser: it sends the same headers as Firefox, keeps cookies and follows the browser's referrer rules, so servers answer it the way they answer your visitors.
Only the start URL is needed. LinkScout finds all internal pages by itself and checks each URL exactly once.
Internal pages, links to other websites (including where redirects end up) and files: images, PDFs, CSS, JavaScript, fonts, videos.
Status of all URLs, response times, clicks from the start page, status codes, size by MIME type and external services. Click any figure to see the matching URLs.
Which hosts your pages load fonts, statistics, videos, maps or scripts from – Google Fonts, Tag Manager, YouTube … – and on how many pages. Handy for the privacy policy.
Search the text or the HTML source of all pages as you type: an old phone number, the former company name, a forgotten tracking code. Regular expressions included.
URL, status, MIME type, title, kind, clicks, size, time and SEO issues – filter by every value, open details with redirect chain, SEO data and the pages that link to a URL.
The URLs of your sitemap are checked too – pages that are listed there but linked nowhere show up as orphans. URLs blocked by robots.txt are marked.
Compare the results with an earlier report: new and removed URLs, changed status codes, new and fixed SEO issues.
HTML and PDF reports with every chart of the overview and the details of each URL; JSON and CSV exports with all data – of the whole site or just the filtered list. Import a report later, search it and re-check only the URLs that failed – or everything.
HTTP Basic authentication is supported. Credentials are only sent to the checked site and never stored in reports.
The results list holds every URL with its status, title, MIME type, kind, clicks, date, size, time and SEO issues. Filter by any of them, sort, and open the details of a URL with its redirect chain, the pages that link to it and the external services it loads.
Every internal page is analysed while it is checked – no extra requests, no account, nothing leaves your machine. The overview shows the SEO health of all pages and the length of titles and descriptions; the results list shows and filters the issues per URL, and the details explain each one with what exactly was found.
noindex, missing or broken canonicals, robots.txt, sitemap entries with errors or noindex, orphan pages.#anchors, mixed content, deep and rarely linked pages.lang, social media previews.
The Sitemap tab shows every internal page as a tree by its URL path – with title, last modification date and the number of pages below each folder. A click on a page shows its details.
lastmod from the server's Last-Modified header.noindex, another canonical URL or blocked by robots.txt are marked and left out.
LinkScout downloads all pages of a website with their images, stylesheets, scripts, fonts and documents and rewrites the links, so the copy can be browsed from disk – or downloaded as ZIP.
<host> and <date>, default ~/Downloads/linkscout/<host>.user.github.io/project) ends up directly in the target folder.-/private/* or -*.zip; requests per second and bandwidth can be limited.
LinkScout is a single, statically linked binary without dependencies. Start it without arguments and it opens its interface in your browser. The interface is available in English and German and follows your system language.
curl -LO https://github.com/dlehmann/linkscout/releases/latest/download/linkscout-amd64.deb
sudo apt install ./linkscout-amd64.deb
The package installs the program, a launcher in the application menu and the icon. For ARM boards (Raspberry Pi 4/5 and others) use linkscout-arm64.deb.
curl -LO https://github.com/dlehmann/linkscout/releases/latest/download/linkscout-x86_64.pkg.tar.zst
sudo pacman -U linkscout-x86_64.pkg.tar.zst
For ARM (Arch Linux ARM) use linkscout-aarch64.pkg.tar.zst.
curl -LO https://github.com/dlehmann/linkscout/releases/latest/download/linkscout-linux-amd64.tar.gz
tar -xzf linkscout-linux-amd64.tar.gz
sudo install -m755 linkscout-*/linkscout /usr/local/bin/
For ARM use linkscout-linux-arm64.tar.gz.
curl -LO https://github.com/dlehmann/linkscout/releases/latest/download/linkscout-darwin-arm64.tar.gz
tar -xzf linkscout-darwin-arm64.tar.gz
xattr -d com.apple.quarantine linkscout-*/linkscout # the binary is not signed
sudo install -m755 linkscout-*/linkscout /usr/local/bin/
sudo pacman -S go git # Arch Linux
sudo apt install golang-go git # Debian 13 or newer (needs Go ≥ 1.24)
git clone https://github.com/dlehmann/linkscout.git
cd linkscout
make install PREFIX=$HOME/.local # binary, desktop launcher and icon
linkscout -report report.json https://example.com # check, write a JSON report
linkscout -report report.html https://example.com # … or a readable report (.html, .pdf, .csv)
linkscout -recheck report.json # re-check the failed URLs
linkscout -report new.json -compare report.json https://example.com # what changed?
linkscout -search "old-company.example" https://example.com # pages that still mention it
linkscout -mirror ./example-offline https://example.com # offline copy
All releases with checksums: github.com/dlehmann/linkscout/releases