CLI for batch testing URL redirects

Usage no npm install needed!

<script type="module">
  import intouchgroupRedirectTester from 'https://cdn.skypack.dev/@intouchgroup/redirect-tester';



Redirect Tester is a tool to automatically test web domain redirects, and write the findings to an Excel workbook or JSON report.

The tool makes multiple requests simultaneously, can handle HTTP or HTTPS domains, allows passing a prefix for a list of domains, and is capable of testing sites which require Authentication.


You must have NodeJS version 12+ installed to use this module.

To check what version of NodeJS you have, launch Terminal on Mac or Powershell on Windows and type node -v.

Once you have NodeJS 12+, globally install the latest version of this module from Terminal or Powershell:

npm i -g @intouchgroup/redirect-tester

You can now run the Redirect Tester from any folder on your computer using Terminal or Powershell.


When you open Terminal or Powershell, you will see a file path listed in the prompt. This is the current location of your Terminal or Powershell.

You can change locations using the cd FILE_PATH command. cd stands for "change directory" (go to a different folder), and is how you navigate using Terminal or Powershell.

  1. Using Terminal or Powershell, navigate to the folder where you want to save the Redirect Tester reports. For example: cd Desktop/Reports

  2. Now run the Redirect Tester tool from Terminal or Powershell with whatever arguments you want. For example: redirect-tester -s intouchsol.com


Arguments are how we tell redirect-tester what to do. Some arguments are required, while others are completely optional. Arguments can be passed in any order, but the value must come right after the argument text. For example:

redirect-tester --argument "This is the value of the argument"

A full list of available arguments with examples is presented below.

Short name Long name What it does
-h --help Shows all available arguments
-i --input Excel input filepath and worksheet options
-s --sites Comma-separated list of URLs to test
-t --targets Comma-separated list of URLs to compare against final redirect URL
-c --codes Comma-separated list of status codes to compare against final redirect status
-p --prefix Prefix text for all site URLs without a protocol
-r --protocol Protocol text for all site URLs without a protocol
-a --auth Username and password for site URLs that require auth
-n --concurrent Number of requests to make simultaneously (default: 5)
-j -json Generate JSON report
-x --xlsx Generate XLSX report
-f --filename Manually set the name of the generated report

Note: When using the -i or --input option, the tool expects the input URLs, target URLs, and target status codes to be in the first, second, and third columns respectively. You must provide the Excel filepath, the worksheet name, and the value of the cell directly above the first input URL. If an input URL is missing the protocol or host, the tool will attempt to construct a valid input URL using the protocol and host of the target URL.


1. Generate an Excel report for multiple sites:

redirect-tester -s intouchsol.com,google.com -x

Tests intouchsol.com and google.com

2. Generate a JSON report for multiple staging sites:

redirect-tester -s intouchsol.com,google.com -p "staging." -j

Tests staging.intouchsol.com and staging.google.com

3. Generate an Excel report for multiple staging sites with different protocols:

redirect-tester -s intouchsol.com,https://google.com -p "staging." -r "http://" -x

Tests ht​tp://staging.intouchsol.com and ht​tps://google.com

4. Generate an Excel report named "MyBestReportYet":

redirect-tester -s intouchsol.com -x -f "MyBestReportYet"

Tests intouchsol.com

5. Generate an Excel report with a comparison of expected redirect results:

redirect-tester -s intouchsol.com -t https://www.intouchsol.com/ -c 301 -x

Tests intouchsol.com

6. Authentication login info must be in the format username:password:

redirect-tester -s private.intouchsol.com -x -a "joe.smith:Password123!"

Tests private.intouchsol.com with authentication

7. Using Excel file for URL inputs, value should be in the format filepath,worksheetName,cellValue:

redirect-tester -i "reports/Input-File.xlsx,Page-to-Page Redirects,Current/Old URL"

Tests the URLs found in the XLSX file, in the worksheet with the specified name, under the cell with the specified value

8. Use short or long names for arguments. These commands are exactly equivalent:

redirect-tester -s intouchsol.com -x -r "http://" -f "MyBestReportYet"

redirect-tester --sites intouchsol.com --excel --protocol "http://" --filename "MyBestReportYet"