Missing Form APs?

Research methods
PCAOB
XBRL
SEC
Author

Ian D. Gow

Published

1 December 2024

Keywords

PCAOB, Form AP, XBRL, SEC, Research methods

In May of 2024, I posted on LinkedIn a brief note about working with data from Form APs filed with the PCAOB. In a comment on my LinkedIn posting, Olga Usvyatsky suggested that “the variation is not limited to firms’ names - for instance, I find errors in reporting CIK codes of the clients intriguing.” I thought it would be interesting to investigate the issue raised by Olga, but doing so would be greatly facilitated by an alternative source for data on auditor-client relationships.

Recently, I discovered that it is relatively straightforward to process XBRL data filed using SEC EDGAR using data sets prepared by the SEC and posted on its website. There are two data sets: the Financial Statements and Financial Statement and Notes data sets, with the latter being roughly ten times as large as the former. For the task we consider here, we need to use the Financial Statement and Notes data set.1

In essence, I compare the auditors listed in firms’ 10-K filings with data on Form APs, with a focus on my success rate in matching the two. In Table 5, we can see that the auditor with the greatest number of non-matches is B F Borgers CPA PC, an auditor featured in a tongue-in-cheek Financial Times article by George Steer that showed that the auditor Ben Borgers had used 14 different names—including the name “Ben F orgers”—on Form AP filings.2 While more research would be needed to investigate the reasons for “missing” data, having Borgers emerge as the “winner” yet again suggests that missing Form AP filings might be another red flag worth pursuing.

This note was written using Quarto and compiled with RStudio, an integrated development environment (IDE) for working with R. The source code for this note is available here and the latest version of this PDF is here.

1 XBRL tags

A key concept in XBRL is the tag. Each value will be associated with, inter alia, a tag that indicates what the value represents. For example, a value might be tagged as AssetsCurrent to indicate that the value represents the total of current assets.3

To understand tags related to auditors, I begin by examining the tags that begin with the text Auditor. From Table 1, it can be seen that there are three such tags in common use: AuditorName, AuditorLocation, and AuditorFirmId.4

From Table 1, it appears that not every filing with non-missing AuditorName has non-missing AuditorFirmId. Table 2 provides more data on the distribution of missing values for these two fields, where has_name and has_id indicate non-missing values of AuditorName and AuditorFirmId, respectively.

Table 3 provides some information on some cases where AuditorName is present, but AuditorFirmId is not. While there’s no clear pattern to these data, they do suggest that firms are not always diligent in including AuditorFirmId in XBRL filings.

From Table 4, it can be seen that most filings containing information in AuditorFirmId are on variants of Form 10-K. So I focus on Form 10-K filings (and variants) in the analysis in this note.5

From the Form APs, I collect data on audit firm IDs, the CIKs of issuers and fiscal period-end dates.

I then merge data from these 10-K filings with data on Form APs using accession numbers and period-end dates. Table 5 shows that roughly 1–2% of filings on Form 10-Ks involving Big Four auditors (firm_id values of 34, 42, 238, and 185), Grant Thornton (248) or BDO (243) appear not to have corresponding matches in the Form APs data.

While there might be a perfectly innocent explanation, it might be worth digging deeper to understand why (say) Gries & Associates, Yusufali & Associates, and Heaton & Company have such high rates of unmatched filings.

Table 1: Tags beginning with Auditor on txt
tag n
AuditorName 45,525
AuditorLocation 45,237
AuditorFirmId 45,130
AuditorOpinionTextBlock 2,345
AuditorsRemunerationTableTextBlock 25
AuditorsRemunerationTextBlock 16
AuditorsRemunerationScheduleTableTextBlock 10
AuditorRemunerationTableTextBlock 10
AuditorSRemunerationTableTextBlock 7
AuditorReplacementProcessPolicyTextBlock 6
AuditorsRemunerationDisclosureTextBlock 6
AuditorInformationTextBlock 4
AuditorNetIncome 3
AuditorAttestationFlag 2
AuditorFirmId2 2
AuditorName2 2
AuditorName1 2
AuditorLocation2 2
AuditorFirmId1 2
AuditorLocation1 2
Table 2: Distribution of missingness of AuditorName and AuditorFirmId
has_name has_id n
FALSE TRUE 22
TRUE FALSE 74
TRUE TRUE 35,117
Table 3: Sample of auditor names with missing IDs
AuditorName n
PricewaterhouseCoopers LLP 7
Ernst & Young LLP 4
Pinnacle Accountancy Group of Utah 4
Gries & Associates, LLC 3
KPMG LLP 3
Table 4: Forms with information on AuditorFirmId
form n
10-K 31,636
20-F 4,926
10-K/A 3,198
40-F 763
20-F/A 533
10-KT 72
40-F/A 54
10-KT/A 9
6-K 8
10-Q 5
8-K 2
6-K/A 1
Table 5: Number of cases without Form AP filings by auditor
firm_id firm_name unmatched total % unmatched
34 Deloitte & Touche LLP 1,526 5,358 28.48
42 Ernst & Young LLP 1,445 6,034 23.95
238 PricewaterhouseCoopers LLP 1,261 4,653 27.10
185 KPMG LLP 1,062 4,175 25.44
248 Grant Thornton LLP 426 1,599 26.64
688 Marcum LLP 247 1,929 12.80
243 BDO USA, P.C. 233 1,175 19.83
49 RSM US LLP 155 783 19.80
100 WithumSmith+Brown, PC 152 919 16.54
173 Crowe LLP 142 604 23.51
2738 M&K CPAS, PLLC 109 393 27.74
686 Forvis Mazars, LLP 108 438 24.66
5525 Fruci & Associates II, PLLC 99 278 35.61
23 Baker Tilly US, LLP 91 351 25.93
5041 B F Borgers CPA PC 88 571 15.41
659 Moss Adams LLP 78 424 18.40
206 MaloneBailey, LLP 70 347 20.17
274 EisnerAmper LLP 63 253 24.90
587 RBSM LLP 61 192 31.77
6993 Boladale Lawal & Co ( Chartered Accountants) 52 65 80.00

Footnotes

  1. Run source("https://raw.githubusercontent.com/iangow/notes/refs/heads/main/get_dera_notes.R") to get these data.↩︎

  2. The analysis of the Form AP data in the FT article had been conducted by independent researcher Stephen Walker and I showed how to reproduce Stephen’s analysis in an earlier note.↩︎

  3. The inter alia refers to other things use to narrow down what the value relates to, such as the filing (adsh, also known as the accession number), the period (ddate), and the applicable XBRL version (version).↩︎

  4. In Table 1, we do see AuditorFirmId1 and AuditorFirmId2, but given how rare these tags are, we can ignore these for present purposes.↩︎

  5. Specifically, I consider 10-K, 10-K/A, 10-KT, and 10-KT/A filings.↩︎