# Calculate market value of equity: use CRSP or Compustat?

I encountered a problem today: I had to calculate market value of equity. On Compustat Quarterly I found three variables that seemed to be what I need: PRCCQ, CSHOQ, and MKVALTQ. On CRSP, I found two variables: PRC and SHROUT. So I calculated three market values:

MV1 = PRCCQ * CSHOQ

MV2 = MKVALTQ

MV3 = ABS(PRC) * SHROUT (Note PRC may be negative so we have to get absolute value)

I suppose the three measures should be at least quite close, but they are not. Specifically, MV1 and MV2 are quite close, but many many MV2 are missing. The difference between MV1 and Mv3 is big in many cases. So I wonder why.

Guan’s short answer seems to be: use COMPUSTAT.

Another application (link) on WRDS notes:

Market value of equity as of the December end of any given fiscal year can be obtained as a product of the close market price at the calendar year end (PRCC_C variable in FUNDA) times the shares outstanding (CSHO). CSHO represents the net number of all common shares outstanding at year-end, excluding treasury shares and scrip. If this market value of equity is not available, we take the product of monthly close market price (PRCCM) and the quarterly shares outstanding (CSHOQ) as of December from the Compustat Security pricing table (SECM). Note that in case a company has more than one common stock issue, the program selects the price of the primary issue identified by Compustat as the issue with the highest average trading volume over a period of time (PRIMISS=’P’). One potential concern here is that the price used represents the price of a single issue, whereas the shares oustanding reflect all common shares. According to WRDS analysis, it does not appear to affect the results as the aggregation of shares outstanding across various stock issues is done by Compustat primarily in cases when issues have similar price.

Estimating market value of equity with CRSP and Compustat

Estimating a firm’s market value of common equity (MVE) at a given point in time is something that a finance researcher does quite often. It can be surprisingly hard using only the two commonly available datasets for financial and stock information, CRSP and Compustat.

The most foolproof way is to use the `prcc_f` and `csho` fields in Compustat Fundamentals Annual file (or their counterparts `prccq` and `cshoq`), which are the closing stock price and the number of shares outstanding (in millions of shares) on the balance sheet date.

For example, here are the values and corresponding market value of equity for Apple, Berkshire Hathaway and the New York Times Company on the latest datadate in my local copy of Compustat:

CompanyDateGVKEYPERMCOcsho (m)prcc_fMVE (\$m)
Apple2010-09-300016907915.97283.75259,906
Berkshire Hathaway2009-12-310021765401.55299,200153,958
New York Times Co.2009-12-3100786621280144.51312.361,786

I can tell you that these numbers are, at least in my opinion, correct. This method is fine if you happen to need MVE on the annual balance sheet date, or the quarterly balance sheet date for firms that are in the Fundamentals Quarterly file, but what if you need MVE at the end of a different month or some arbitrary date? For example, you may want to construct portfolios sorted by book-to-market, and since accounting information is not released on `datadate`, you want to make sure you are not using information that is not available to outsider investors.

The simplest way is, of course, to look in the CRSP Monthly (or Daily) Stock File. The PERMNO for Apple common stock is 14593, so we could multiply `abs(prc)` (because bid/ask midpoint prices are reported as negative numbers in CRSP, don’t forget that!) and `shrout`, shares outstanding in thousands. For Apple on 2010-09-30, this gives us 283.75×915,970=\$259.9 billion, the same result as Compustat.

What about Berkshire Hathaway? Remember that Berkshire Hathaway has two share classes traded on the New York Stock Exchange, A shares (PERMNO 17778) and B shares (PERMNO 83443). We simply have to multiply price and shares outstanding for each class and sum them. The generic way to do this is to start with a PERMCO, get every security that has share code 10 or 11 (common stock), and multiply price with shares outstanding. Here’s sample SAS code for this, in this case hard coded for Berkshire, but you can figure out how to merge with a separate list of PERMCOs and dates (and properly use `group by`):

How come we had to use 4 different figures to calculate Berkshire’s market value using CRSP data, and only two figures with Compustat data? This is because `csho` and `prcc_f` are stated in terms of only a single class of stock. Berkshire Hathaway had 1.552 million class A equivalent shares outstanding, weighted by the relative economic interest of the different share classes, a number that the poorly paid S&P research assistants probably found in Item 6, “Class A equivalent common shares outstanding, in thousands” in the Berkshire 10-K. (Some companies make this a lot harder to find, especially on the balance sheet date rather than reporting date.)

Now if you do this for the Times Company on 2009-12-31, you would find only one share class on CRSP, PERMNO 47466, and a market value of 12.36×143,715=\$1,776 million. This is almost \$10 million less than what Compustat has. What happened?

If you looked very closely at the CRSP names file, you would notice that PERMNO 47466 represents class A common stock. Some companies have only a single class of common stock that is still designated class A, but the Times Company has a separate class B that is not traded on any exchange and is not on the CRSP tape.

So how do we estimate MVE for the Times Company at the end of January 2010, which is not in Compustat? My solution is to multiply the CRSP market value with the last known ratio of Compustat to CRSP market value. This ratio was 1,786/1,776=1.0056. CRSP market value on 2010-01-29 was 12.92×143,715=\$1,858 million. Multiplied with our ratio, this gives an estimate of total market value of equity of \$1,867 million. This estimate doesn’t account for the special voting rights of class B stock, but it is probably the best practical value we can assign to Times Company equity at market prices.

My adjustment may not be such a huge deal for the Times Company, but I can tell you that at the end of 2002, Ascent Media Group (PERMNO 88354, GVKEY 006948) had a total market value of equity, as implied by issues on CRSP, that was 11.7 times the market value of issues on the CRSP tape.

This entry was posted in Learning Resources. Bookmark the permalink.

### 8 Responses to Calculate market value of equity: use CRSP or Compustat?

1. Carolina Magda says:

Very good!!!

2. red2139 says:

Thank you =)

3. WJ says:

Can you calculate the market value through global Compustat data? There seems no prcc_c and csho in the Compustat global dataset.

4. Jixun says:

Great！
Thanks a lot！

5. HCC says:

I am wondering, is this because that
CRSP. PRC and SHROUT outstanding are not. To adjust prices and shares outstanding, use the following code in SAS:
# Adjusted prices = PRC / CFACPR
# Adjusted shares = SHROUT * CFACSHR.
Sometimes, CFACPR and CFACSHR are not the same.

• Kai Chen says:

Good question. I also noticed they are not equal sometimes, probably because price adjustment is not always due to stock split or consolidation, e.g., dividend can also result in price adjustment. I am not so sure though.

6. Wenjing says:

Thank you for documenting this, really helpful!

7. X Huan says:

Thank you for this. This is very useful!!!