This small tool has CLI and in-code interfaces. It is used to generate keyword ideas using Google's Autocomplete, People also search and People also ask results and save them to TXT, CSV, JSON file. Scrape results were obtained using SerpApi.
Currently supports:
- Google search
- other engines soon.
📌Note: If you want to use this tool for personal or commercial purposes, you must register on SerpApi and get your own API key (no credit card needed, free plan available). The default API key used is for informational purposes only.
If you want to use SEO Keywords generator as CLI and save results in a file, you need to install it globally:
npm i -g js-seo-keywords-generator
If you want to get results from SEO Keywords generator in your Node.js app, you need to add it to your project dependency:
npm i js-seo-keywords-generator
Before use, you must add an environment variable API_KEY
with your API key from SerpApi. Read more how to add it in different systems.
Usage example:
seo get <search query>
Usage options:
seo help get
Available arguments
-e, --engine <engine(s)...> Parameter defines the engine(s) of use. It can be set to "paa" (People Also Ask),
"rs" (Related Searches), "ac" (Autocomplete), or in any combination, e.g.
"paa,rs,ac" (default). (default: ["paa","rs","ac"])
-d, --domain <google domain> Parameter defines the Google domain to use. It defaults to google.com. Head to the
https://serpapi.com/google-domains for a full list of supported Google domains.
(default: "google.com")
-gl, --country <country code> Parameter defines the country to use for the Google search. Head to the
https://serpapi.com/google-countries for a full list of supported Google countries.
(default: "us")
-hl, --language <language code> Parameter defines the language to use for the Google search. Head to the
https://serpapi.com/google-languages for a full list of supported Google languages.
(default: "en")
-dl, --depth <depth limit> Parameter defines the depth of disclosure of questions for People Also Ask (default:
"1")
-ft, --type <file type> Parameter defines the type of file to save. (choices: "json", "txt", "csv", default:
"json")
-h, --help display help for command
📌Note: The depth limit parameter for People Also Ask can be set from 1 to 3. This limit is set because for each depth value, the number of results returned grows exponentially, for example, if the number of results is 5
at each level, for a depth of 3
, the total number of results will be equals 125
.
Import SEO
to your file:
import SEO from "seo-keywords";
Before use, you need to define your API key from SerpApi. There are several ways to do this:
- Add an environment variable
API_KEY
with your key. Read more how to add it in different systems; - Add your key directly in code:
SEO.api_key = "your_api_key"
.
Usage example:
(async () => {
console.log(await SEO.getAll("minecraft"));
})();
Awailable methods:
getAll(query[, domain[, country[, language[, depthlimit]]]])
getCustom(engines, query[, domain[, country[, language[, depthlimit]]]])
getPeopleAlsoAsk(query[, domain[, country[, language[, depthlimit]]]])
getRelatedSearch(query[, domain[, country[, language]]])
getAutocomplete(query[, domain[, country[, language]]])
query
- search query.engines
- parameter defines the engine(s) of use:paa
(People Also Ask)rs
(Related Searches)ac
(Autocomplete)- could be combined:
paa, ac
domain
- parameter defines the Google domain to use. Head to the Google domains page for a full list of supported Google domains. Default isgoogle.com
.country
- parameter defines the country to use for the Google search. Head to the Google countries page for a full list of supported Google countries. Default isus
.language
- parameter defines the language to use for the Google search. Head to the Google languages page for a full list of supported Google languages. Default isen
.depthlimit
- parameter defines the depth of disclosure of questions for People Also Ask. Default is1
(Only for People Also Ask engine).
📌Note: The depth limit parameter for People Also Ask can be set from 1 to 3. This limit is set because for each depth value, the number of results returned grows exponentially, for example, if the number of results is 5
at each level, for a depth of 3
, the total number of results will be equals 125
.
Read more usage examples in JavaScript SEO Keywords Research Tool: Google Autocomplete, People Also Ask, and People Also Search For blog post.