Wondering what’s next for npm?Check out our public roadmap! »


    1.0.1 • Public • Published

    Data Logging Service in Google Sheets (node.js)

    npm version

    A simple Node.js module for logging in Google Sheets.



    Basic Usage

    • Create a Google Sheets File and give access to the Service Account as described in the Authentcation secion.

    • Add the following headers (case-sensitive) to your sheet:

      • Log Id
      • Log Message
      • Log Time
    • Import the module and use as shown below.

    var GoogleSheetLogger = require("google-sheets-logger");
    var creds = require("./google-generated-creds.json");
    // Spreadsheet key is the long id in the sheets URL
    var Logger = new GoogleSheetLogger("<Spreadsheet Key>", creds);
    Logger.log("1", "Sample Log Message", "2019-10-08 12:49:44");
    // When Timestamp is not passed, it adds the current time as the Timestamp of the Log Message by default.
    Logger.log("1", "Sample Log Message with no Timestamp");
    // To add logs in sheets other than the first one of your workbook, pass the sheet index as the 4th argument.
    // Index starts at 1.
    Logger.log("1", "Sample Log Message", "2019-10-08 12:49:44", 3);


    IMPORTANT: Google recently deprecated their ClientLogin (username+password) access, so things are slightly more complicated now. Older versions of this module supported it, so just be aware that things changed.

    Service Account (recommended method)

    This is a 2-legged oauth method and designed to be "an account that belongs to your application instead of to an individual end user". Use this for an app that needs to access a set of documents that you have full access to. (read more)

    Setup Instructions

    1. Go to the Google Developers Console
    2. Select your project or create a new one (and then select it)
    3. Enable the Drive API for your project
    • In the sidebar on the left, expand APIs & auth > APIs
    • Search for "drive"
    • Click on "Drive API"
    • click the blue "Enable API" button
    1. Create a service account for your project
    • In the sidebar on the left, expand APIs & auth > Credentials
    • Click blue "Add credentials" button
    • Select the "Service account" option
    • Select "Furnish a new private key" checkbox
    • Select the "JSON" key type option
    • Click blue "Create" button
    • your JSON key file is generated and downloaded to your machine (it is the only copy!)
    • note your service account's email address (also available in the JSON key file)
    1. Share the doc (or docs) with your service account using the email noted above

    Further possibilities & to-do

    • Enable logging on public sheets.
    • Create Header automatically using the module.



    google-sheets-logger is published under the MIT license. For more information, see the accompanying LICENSE file.


    npm i google-sheets-logger

    DownloadsWeekly Downloads






    Unpacked Size

    5.76 kB

    Total Files


    Last publish


    • avatar