Check if domain names are available using a Google Spreadsheet

Short answer

  1. Open this google sheets template & copy it to your google drive
  2. Get a API key via
  3. You get 10,000 queries every month for free
  4. Paste your API key into the google sheet and start using it (you may need to provide one-time permission for the script to work).

Long answer

Checking domain names for business ideas is a chore, even with bulk domain name checkers. I want a solution that:

  • Stores my ideas so I can see them again later
  • Quickly checks variations of similar names
  • Doesn’t try to sell me anything
  • Is shareable
  • Lets me collaborate with others
  • Has an intuitive interface
  • Is private
  • Is free

Which I couldn’t find anywhere, so I made one.

Step 1: Get the template

  1. View the template
  2. Copy it into your own Google Drive to start editing

Step 2: Get a free* API key has an API that lets us script our lookups into a google sheet, but they make it available via

  1. Sign up for a free account at‘s market
  2. Subscribe to the API via You might need to put in your credit card info in case you go over the lookup limit (10,000/month).
  3. *It’s free up to 10,000 lookups per month. If you share your google sheet publicly, you risk hitting that limit quickly and you’ll be charged.
  4. Add the domainr API to a mashape application (which could be the Default Application created for you)
  5. Get the application key by clicking “Get the Keys” on your application’s overview page. Here are more detailed instructions from mashape’s documentation.

Step 3: Use it


Because the script is connecting an external service and the content of your spreadsheet, when you first try to use the script you may need to authorize the script to access your Google Drive. This is normal and there’s nothing evil or tricky going on here. Allow the permission and carry on.

domain lookup_request for permission

The formula

The custom script in the google sheet template I provided creates a new formula called domainLookup(). Now you can use it like any other formula in your spreadsheet. For example:


Our new formula will use the contents of cell D2 and check if it’s an available domain name.  Make sure the content of D2 is a valid domain name including the extension and not including www or http. For example,

You could also use the formula like this:


But don’t do that. It isn’t helpful to quickly check multiple domain name ideas at once. Instead, reference a cell as in the previous example.

To access the script within your google sheet, go to Tools > Script editor …


The full script

Wrap up

Whenever I get a business idea, event idea, or just something for fun, I use my spreadsheet to quickly see what’s available. Domains are about $10, so even if the domain name forwards to somewhere else (like forwarding to a facebook event page), it can be much easier to tell people the catchy domain name than hope they remember a long, annoying URL. Even shortened urls like those from tinyurl aren’t super intuitive to remember when said in person or printed on a marketing materials.

When I find the domain name I want and it’s available, then I go to an actual domain registrar and purchase the domain. I thought about adding affiliate links so you could purchase the domains directly from the google doc, but that seemed schmaltzy and violated my purpose of having something that wasn’t trying to sell me anything.

Any improvements? A better way to do this without having to put in a credit card? Let me know!

  • ho100ho

    Hi Kenny,

    Great article and exactly what I was looking for.

    I was reading the Domainr documentation for “status” search ( It states:
    “All API calls have a strict 30-second timeout, and you can check up to 10 domains per call.”

    So with the Domainr subscription of 10,000 on the Basic (free) plan, you could essentially check up to 100,000 domains.

    I was trying to tweak your code to do the following:

    Term: dogs
    Interested Domain Extensions: .com .net. org
    Domains to search for:

    So instead of making 5 call request to Domainr, I wanted to type the term once, make 1 call request and check all the 5 domain variations.

    I am new to Javascript coding and have no luck in tweaking the code.

    Also noticed the cell reference in link 26 should read A14.
    //Get the Key from cell A11 on the sheet named “Key”

    Any help would be appreciated.


    • (Sorry for the crazy-late reply! I didn’t get a notification.)

      Thanks for your note about the wrong cell reference in the comment. I switched the code to be range-based instead of cell specific, so the comments don’t include any cell references anymore.

      I love the idea of including multiple TLD variations in a single request, but I don’t know how to do that off the top of my head either. Would love to hear if you found a method. I could see a need for up to 100,000 if you’re doing some in-depth research or for multiple business ideas. I’ve never come anywhere close to the 10,000, so I’ve never tried to consolidate requests.

  • Debbie Discovers

    Worked beautifully! Cheers!