Finding Historical Shares Outstanding Data and Adjusting for Splits
Summary
The document surveys ways to obtain historical shares outstanding for individual stocks. It identifies company filings in the SEC EDGAR database as a primary source, with quarterly 10-Q and 10-K reports providing reported share counts. It also mentions financial data services and databases as ways to retrieve the information without collecting filings manually. The answers describe alternative sources and approaches, including parsing filing data, searching financial databases, using data providers, and scraping a market-data website.
The data requires careful interpretation: filings may report different share-count measures, such as weighted-average shares, and the latest reported figure is generally quarterly rather than continuously updated. Historical prices may also need split adjustments when reconciling past and current share counts. The responses describe using split histories or adjusting price series to infer scaling, but the listed services, endpoints, and access terms may have changed or become unavailable. The document is a source guide, not a unified validated dataset or a guarantee of consistent definitions across vendors.
Key ideas
- SEC company filings provide reported historical share counts, usually at quarterly intervals.
- Share-count fields can differ, including period-end and weighted-average measures.
- Financial vendors and databases may simplify retrieval, but availability and coverage can vary.
- Split history is needed to reconcile share counts across changes in a company's share basis.
- The cited services and retrieval methods may be outdated and should be checked before use.
Tags
Full text
# Data source for historical Share Outstanding totals for individual stocks?
# 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?
## Answer by jlowin (score 16, accepted)
https://quant.stackexchange.com/a/4080
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.
## Answer by user25064 (score 4)
https://quant.stackexchange.com/a/8555
I wanted to add this answer for anyone still searching for a convenient way to find this data,
- go to http://www.quandl.com/
- 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.
## Answer by ruan (score 2)
https://quant.stackexchange.com/a/33804
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.
## Answer by fny (score 1)
https://quant.stackexchange.com/a/10325
YCharts provides historical data and charts for the number of shares outstanding. Here is Yahoo's chart as an example.
## Answer by RBZ (score 1)
https://quant.stackexchange.com/a/10567
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
## Answer by tw0000 (score 1)
https://quant.stackexchange.com/a/40814
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
## Answer by JavaHead1560 (score 0)
https://quant.stackexchange.com/a/28100
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.
## Answer by r_hudson (score 0)
https://quant.stackexchange.com/a/33540
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)
## Answer by Lucas A (score 0)
https://quant.stackexchange.com/a/61913
I couldn't get it in quadl but found it in https://financialmodelingprep.com/developer/docs#Financial-Statements-GrowthShown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.