I am looking for a free way to get a large amount of data on the prices of stocks. I am not a trader or anything like that so it wouldn't be worth it to pay for a service to give me stock prices. I have a mathematics background and I would like to make my own determinations of what stocks to invest in. To do this, I need some data.

Is there any free place online to download data on various stock prices over the last few years?

I would probably like to do this for a few stocks so it would be good if it could somehow be in a text file or a csv rather than having to type it out myself.

I know there are websites that crunch the numbers for you but I would prefer to do it myself.

EDIT: If there aren't any free services, where should I look for cheap ways to get the data I need?

  • @Chris: I think end of day prices would probably suit me fine. Although, I suspect I would use it less often. My interest is in analyzing historical data and picking stocks that I would be holding for several months. I don't know a huge amount about this. (So, I will probably be paper trading in the beginning.) But perhaps there will be points where I might need information at the end of the day everyday, at the most frequent. I doubt I will ever have the kind of time needed to check prices and do analyses more than once or twice a day.
    – Henry B.
    Aug 17, 2010 at 18:23
  • Maybe Stock Data Downloader is what you were looking for. Jul 1, 2017 at 6:35

5 Answers 5


Go to http://finance.google.com, search for the stock you want. When you are seeing the stock information, in the top left corner there's a link that says 'Historical prices'. Click on it. then select the date range, click update (don't forget this) and 'Download to spreadsheet' (on the right, below the chart).

For example, this link takes you to the historical data for MSFT for the last 10 years.

http://finance.yahoo.com has something similar, like this. In this case the link to download a CSV is at the bottom of the table.

  • 1
    +1 for Yahoo. I've found their data more complete than Google. Maybe it's changed, but last time I checked Google didn't have ETFs, mutual funds, etc.
    – user1175
    Aug 20, 2010 at 11:53
  • 1
    Google has ETFs data now (google.com/finance/historical?q=NYSE:UNG) and also mutual funds (google.com/finance/historical?q=MUTF:PTTRX).
    – Gonzalo
    Aug 20, 2010 at 13:36
  • +1 for user1175 and for the Yahoo data, much better than the google.
    – JP.
    Sep 17, 2010 at 10:32
  • How come they don't give historical price sheets for currencies? Nov 17, 2010 at 11:40
  • 1
    @Raskolnikov I know this is an old question, but if you want free historical data for currencies, FRED (Federal Reserve Economic Data) is a great resource. Aug 29, 2013 at 21:45

I also searched for some time before discovering Market Archive, which AFAIK is the most affordable option that basically gives you a massive multi-GB dump of data. I needed sufficient data to build a model and didn't want to work through an API or have to hand-pick the securities to train from. After trying to do this on my own by scraping Yahoo and using the various known tools, I decided my time was better spent not dealing with rate-limiting issues and parsing quirks and whatnot, so I just subscribed to Market Archive (they update the data daily).


You may refer to project http://jstock.sourceforge.net. It is open source and released under GPL.

It is fetching data from Yahoo! Finance, include delayed current price and historical price.


I also prefer to crunch the numbers myself. Here are some resources:


There are several Excel spreadsheets for downloading stock quotes (from Yahoo Finance), and historical exchange rates at http://investexcel.net/financial-web-services-kb

Not the answer you're looking for? Browse other questions tagged .