You've successfully subscribed to The Finbox Blog
Great! Next, complete checkout for full access to The Finbox Blog
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.
Using the Google Spreadsheets Add-on

Using the Google Spreadsheets Add-on

. 5 min read

Using the Google Spreadsheets Add-on

Our Google Spreadsheets Add-on enables easy access to your favorite data points from like fair value targets, public company stock quotes, historical financials, valuation and fundamental ratios and more.

Using a simple function = FNBX( ) you can incorporate our data into your spreadsheets.

Topics covered in this guide:

  1. Install the free Google Sheets Add-on from the Google Webstore.

  2. Create a copy of this FNBX [Demo] template which contains examples using the formula.

  3. In top toolbar on Google Sheets, click the Add-ons menu and then Get Started.



If you've installed the Google Sheets Add-on, you can use the add-on in any Google spreadsheet by enabling it from the Add-ons menu. (Add-ons > Manage add-ons)


Using the = FNBX( ) function

Once you've installed and enabled the add-on, you can construct a formula by typing = FNBX( ) into any cell. The formula accepts inputs in the order described below.

= FNBX( "ticker" , "metric_slug" , "period" )
Note: Providing a period is optional and will default to latest supported time period.

Ticker supports thousands of companies across all major US exchanges. If you need data for a company we don't currently support, send us a note at and we'll do our best to accommodate you.

[ Browse Supported Tickers ]

You can also search for a ticker right from the sidebar in Google Sheets. (Add-ons > > Search Supported Functions)


Metric Slug aggregates and computes hundreds of metrics for each of the companies we support. Timeseries metrics like stock price may contain up to 10 years of historical data.

You can search for the metric_slug associated with a metric in one of two ways:

  1. using the Data Explorer, or
  2. using the search utility in Google Sheets. (Add-ons > > Search Supported Functions)


To make it easy for our own team to work with this data, we developed a unique key-value query language we call FinQL. To standardize access to timeseries data that may have different reporting intervals, some metrics include a list of supported "periods". Periods allow you to select the reporting interval and calendar range of data you'd like to retrieve.

For example, revenue is reported on a quarterly and annual basis, as determined by a company's fiscal calendar. The last 10 years of annual revenue figures is represented by the periods FY-9 to FY. Similarly, the last 8 quarters of reported quarterly revenue is represented by periods FQ-7 to FQ. The stock_price metric, on the other hand, is reported with daily frequency. So to retrieve the last 30 days of closing prices for a company, you would request data from periods D-30 to D. Providing a period is optional and will default to latest period.

You can search for the metric_slug associated with a metric in one of two ways:

  1. using the Data Explorer, or
  2. using the search utility in Google Sheets. (Add-ons > > Search Supported Functions)

The following table summarizes supported period formats:

  • Get the latest stock price for Microsoft, ticker MSFT
= FNBX( "MSFT" , "stock_price_latest" )
  • Get the stock price for Bank of America (BAC) on September 15, 2008 (9/15/2008)
= FNBX( "BAC" , "stock_price" , "Y2008.M9.D15" )
  • Get the total revenue for Facebook (FB), for the latest fiscal year
= FNBX( "FB" , "revenue" , "fy" )
  • Get the total revenue for Facebook (FB), for the fiscal year before last
= FNBX( "FB" , "revenue" , "fy-1" )

Pro Tips

Use relative cell references

Instead of typing the ticker and metric_slug inside the formula, put these formula inputs in a separate cell. This will make it easier to debug your formulas.

Using this approach in combination with relative cell references can save you a lot of time. Check the Watchlist section in the FNBX [Demo] spreadsheet for an example.

A2 := AAPL
B2 := name
= FNBX( $A3 , B$2 )
= FNBX( "AAPL" , "name" )
Not As Great

**Grab the latest data and recalculate the workbook**

To refresh the formulas in a spreadsheet and fetch the latest data points, click the Refresh Data menu option:


Known Issues

Adding a row, adding a column, or reopening a Google Sheet will recalculate all formulas

By design, Google Sheets recalculates all formulas every time you reopen a spreadsheet or change the inputs of a function. This can be frustrating if you're building a fairly large model with lots of = FNBX( ) formulas. In these cases, we recommend creating a separate sheet that pulls in all the external data required and linking to the cells on a separate sheet. This is generally a good financial modeling practice to follow.

Sorting a column will recalculate all formulas

Google Sheets (and spreadsheets in general) are not good at sorting columns that have cells with formulas. Before sorting, we recommend duplicating the sheet and unlinking the values.


Google Sheets quota on requests

If you have a lot of = FNBX( ) formulas in a sheet, you may run into a Google Sheets quota limit for UrlFetch Requests. This quota limits the number of data points that can be requested in a single day. The limit on a free Google Sheets account is 20,000 requests per day. To increase this limit, Google requires you to sign up for GSuite. Unfortunately, there is no workaround on our end to address this issue.

##### Sources / Further Reading:

Andy Pai

Founder @ We build tools that make life easier for investors. I started my career in investment banking. I live in Chicago. Reach out if I can be helpful!

Try The Tools Used By Smart Investors

Join Finbox for Free Try Finbox Stock Analyzer