How to Check Website Age?

Hi Everyone! Is there any easiest way of checking domain age in less time? I wanna check site age of my competitors in one click. Is there any solution of checking it? I have tried many other tools but they charge after few attempts. I need free one. Thank You in advance.

1 Like

You should be able to find the creation date with any whois query.

https://www.shopify.com/tools/whois

1 Like

If you need to check programmatically, use one of the npm packages that implement whois.

Have you tried whois?

I tried but it did not solve my problem.

1 Like

Ops. The best alternative of Who.is is Coderstools. I am using their services from past 4-5 months for free. You can also check IP of website easily. The best thing about this site is that they are providing many paid things for free.

how about using the wayback machine?

https://archive.org/web/

1 Like

This is also a good site.

Thank You for sharing this. I will check it and will let you know.

Here man wrote this to help just save the following as whois.js and run with node whois.js website-to-test-here.com

eg. node whois.js meteor.com
meteor.com created on: Thu Mar 02 1995 05:00:00

It will spawn a whois process from the system binary and regex the creation date from the output then turn that into a Date object.

const { spawn } = require("child_process");
var myArgs = process.argv.slice(2);
if(myArgs[0]){
  var website = String(myArgs[0]);
}
if(myArgs.length == 0){
  console.log('Whois script: Usage whois.js website.com');
  console.log('No Website specified.');
  process.exit();
}
const ls = spawn("whois", [website]);

ls.stdout.on("data", data => {
    //Extract creation date
    var creation = String(data).match(/Creation Date: ([0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:\d\d:\d\d)/g);
    creation = String(creation[0]).replace('Creation Date:', '').trim();
    creation = new Date(Date.parse(creation));
    console.log(`${website} created on: ${creation}`);
    //console.log(`stdout: ${data}`);
});

//Errors
ls.stderr.on("data", data => {
    console.log(`stderr: ${data}`);
});

ls.on('error', (error) => {
    console.log(`error: ${error.message}`);
});

ls.on("close", code => {
    //console.log(`child process exited with code ${code}`);
});

the meteor example shows why whois is not suitable to find out the website age. The creation date is just the date when the domain name was created. But the name could have been transfered multiple times.

The wayback machine shows the full story of the meteor.com domain:

the domain seems to have been transfered multiple times, until mdg built meteor and bought this domain somewhere in 2011/2012

1 Like

He wanted creation, for transfer you check a different value called update. I have modified the script to show that below… very easy you can now run moment on it or do whatever you want. If you need any other values just say - its all in the whois. Wayback machine is just aggregating that and the chart is their scrapes which triggered a record of a significant change - it has nothing to do with DNS btw.

const { spawn } = require("child_process");
var myArgs = process.argv.slice(2);
if(myArgs[0]){
  var website = String(myArgs[0]);
}
if(myArgs.length == 0){
  console.log('Whois script: Usage whois.js website.com');
  console.log('No Website specified.');
  process.exit();
}
const ls = spawn("whois", [website]);

ls.stdout.on("data", data => {
    //Extract creation date
    var creation = String(data).match(/Creation Date: ([0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:\d\d:\d\d)/g);
    creation = String(creation[0]).replace('Creation Date:', '').trim();
    creation = new Date(Date.parse(creation));
    console.log(`${website} created on: ${creation}`);

    var updated = String(data).match(/Updated Date: ([0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:\d\d:\d\d)/g);
    updated = String(updated[0]).replace('Updated Date:', '').trim();
    updated = new Date(Date.parse(updated));
    console.log(`${website} updated on: ${updated}`);
    //console.log(`stdout: ${data}`);
});

//Errors
ls.stderr.on("data", data => {
    console.log(`stderr: ${data}`);
});

ls.on('error', (error) => {
    console.log(`error: ${error.message}`);
});

ls.on("close", code => {
    //console.log(`child process exited with code ${code}`);
});

Now outputs:

meteor.com created on: Thu Mar 02 1995 05:00:00
meteor.com updated on: Tue Jun 22 2021 13:27:17

I can get anything from the whois the important keys could be
Registry Expiry Date: 2023-03-03T05:00:00Z
Registrar: Amazon Registrar, Inc.
Domain Status: clientTransferProhibited EPP Status Codes | What Do They Mean, and Why Should I Know? - ICANN
Name Server: NS-1052.AWSDNS-03.ORG
Name Server: NS-1819.AWSDNS-35.CO.UK
Name Server: NS-462.AWSDNS-57.COM
Name Server: NS-649.AWSDNS-17.NET

From this you could know who registered where, when it expires and if they are open to transfer. Run it constantly spidering and build a huge dataset of every URL you want to buy on the net without triggering godaddy’s parking bot… or just check it when you need… up to you