# Data source for historical Share Outstanding totals for individual stocks?

Data is normally adjusted for splits/reverse splits, etc. The current shares outstanding is usually available. Is there a data repository that captures the shares outstanding for any point in the past?

• \$ or free data? the later I won't think exists – pyCthon Sep 4 '12 at 16:49
• I guess either one though this seems obscure enough, for whatever reasons, that it is hard to imagine anyone is collecting it with a big payoff in mind. – Rage With The Machine Sep 4 '12 at 19:34

## 8 Answers

That information is available in the SEC's EDGAR database, though there can be many flavors of "shares outstanding". It is reported quarterly in a company's 10-Q/K, sometimes on a weighted-average basis. If you don't want to get it manually, a service like Bloomberg will let you access the historical levels quite easily, or you can parse the EDGAR XML feeds.

You should note that the "current" number you refer to is just the most recent quarterly number -- the data isn't available with finer granularity.

If you need to reconcile splits, one (free) option is to use a service like Yahoo Finance -- their "Adjusted Close" normalizes historical prices for dividends and splits. You could back out the dividend impact and use the ratio of "Close" to your new "dividend-excluding Adjusted Close" to get the necessary scaling factor. Alternatively, you can download a table of just dividend/split information and parse it to get the required factors for splits only. To get that table, choose the misleadingly-named "Dividends Only" option.

• I expanded on this answer below. I tried to put it here but there was no room or formatting – RBZ Mar 13 '14 at 0:31

I wanted to add this answer for anyone still searching for a convenient way to find this data,

1. search in this format <ticker> outstanding shares

Edit: The appropriate result should be in there somewhere, it may no longer be the first link as it previously was.

• "That's it"? I did what you suggested for Microsoft and got, "539,748 results for "MSFT outstanding shares". Page 1 / 26988". If you're going to say "that's it", at least tell people to search for "<ticker> number of shares outstanding" where the first result is what they're looking for. – Joshua Ulrich Jul 29 '13 at 20:58
• yields first result either way, i added "click the first link" to the directions in case that wasn't overly obvious to someone – user25064 Jul 30 '13 at 13:20

YCharts provides historical data and charts for the number of shares outstanding. Here is Yahoo's chart as an example.

• YCharts limits daily use and wants to charge for use. – RBZ Mar 12 '14 at 23:29
• True, but the OP didn't care. "guess either one though this seems obscure enough, for whatever reasons, that it is hard to imagine anyone is collecting it with a big payoff in mind." – fny Nov 28 '16 at 22:23

user25064 gave http://www.quandl.com/, which is a good source.

To use quandl.com to retrieve shares outstanding history the following works: http://www.quandl.com/api/v1/datasets/OFDP/DMDRN_MSFT_FLOAT.json?&trim_start=2003-12-31&trim_end=2012-12-31&sort_order=desc

I gave json since it is just the easiest form to deal with. But several other formats are available. "MSFT" in the URL can be replaced with any stock symbol and quandl.com "offers free and unlimited access".

Update: This is an old answer. It no longer works

• Fails with API requests for OFDP has been deprecated. Please contact connect@quandl.com for further information.. – John M Nov 24 '16 at 4:44

One more source now

http://www.katelynnsreport.com/main/query

You can find the history of shares outstanding, PE, price to book value, ... every popular financial metrics, as well as history of ranking comparing to industry, sector peers.

Previous Quandl links/suggestions have been depreciated or are totally unclear. Here's a link that's good as of 7/15/2016, you can get data since 2010 for free with this: https://www.quandl.com/data/RAYMOND?keyword=outstanding%20shares

In there you can find export to CSV/XML/JSON options, and instructions on how to get this through the Quandl API in python/matlab/R (and presumably more).

Please comment if you find one of these that's free and with data that goes back further.

Here's a pretty clean solution via scraping the NASDAQ website:

import requests
from bs4 import BeautifulSoup

def get_n_shares_outstanding(ticker):
nasdaq_soup = requests.get("https://www.nasdaq.com/symbol/{}/stock-report".format(ticker))
soup = BeautifulSoup(nasdaq_soup.content, "html.parser")

for td in soup.find_all("th",text="Shares Outstanding"):
n_shares_outstanding = int(td.find_next_sibling().get_text().replace(',', ''))

return n_shares_outstanding

get_n_shares_outstanding('AAPL')


4915138000

Historical outstanding shares can be obtained for free from Quandl: Following is the R code for outsatnding shares for IBM from 2012-12-30 onwards.

Quandl.datatable("ZACKS/FC", ticker=c("IBM"), per_end_date.gt="2012-12-30",qopts.columns=c("comm_shares_out","wavg_shares_out_diluted","wavg_shares_out", "per_end_date"))


Also account can be created for free on Quandl and you can get your API key to access the database, it has limited usage though (50 calls per day)