Income vs Expenses

102 views
Skip to first unread message

Helena Bach

unread,
Jan 27, 2025, 10:47:35 AMJan 27
to OpenSecrets Open Data

Dear all,

I am currently working with lobbying data and am trying to disentangle income from expenses. Specifically, the "amount" variable can either represent income (the amount a client pays to a lobbying firm) or expenses (the amount a lobbying firm spends).

My focus is on understanding how much firms spend on lobbying. If a firm hires a lobbying firm to handle their lobbying efforts, is there a way to determine how much they are paying to the lobbying firm?

Any guidance or suggestions would be greatly appreciated.

Best regards,

Helena Bach

unread,
Jan 27, 2025, 11:18:42 AMJan 27
to OpenSecrets Open Data
 I have a follow-up question.
 For example, Sammons Enterprises hired multiple lobbying firms to lobby on the same issue (e.g., "TAX"). If I collapse the data at the Year, Client, Ultorg, and Issue level, does this approach allow me to accurately capture how much more or less the firm lobbied on that issue in a given year?

For context, here’s an excerpt of the data:

Uniqid                                                                          Client                         Issue    Year    Amount   Type   Registrant         Ultorg  
EA828D35-77D2-4829-A1B7-0830FDE96FCA  Sammons Enterprises  TAX     2008   20000    q1     C2 Group           Sammons Enterprises  
3438A0AD-EADC-4F82-A51B-6CB3DB4F0C73  Sammons Enterprises  TAX     2008   0        q1     Davis & Harman     Sammons Enterprises  
130183C6-905E-4865-9518-1BB3E1752CF0  Sammons Enterprises  TAX     2008   10000    q2     Davis & Harman     Sammons Enterprises  
BF8CCD84-7DFF-4AAF-95D5-1CBF10BCB2E0  Sammons Enterprises  TAX     2008   20000    q2     C2 Group           Sammons Enterprises  
3B3A2423-7438-46E8-9A2C-7B13F6976BD3  Sammons Enterprises  TAX     2008   10000    q3     Davis & Harman     Sammons Enterprises  
0AEB708B-69F5-434F-BA3E-EA1642CF8D81  Sammons Enterprises  TAX     2008   20000    q3     C2 Group           Sammons Enterprises  

My specific doubts are:

  1. By collapsing at this level, am I capturing the full extent of the lobbying effort (as proxied by Amount) for the issue in question?
  2. If I want to compare lobbying intensity across issues (e.g., comparing "TAX" vs. another issue), would this collapsed structure still work?

Thank you again!

Matthias Rémy

unread,
Jan 27, 2025, 9:30:55 PMJan 27
to OpenSecrets Open Data
Hi Helena,

To the question of income vs expenses, these are distinguished in the LDA API in separate fields (a call to the 'filings' API returns json files with 'income' and 'expenses' fields per lobbying activity). If I understand the context of your question, the two fields are merged in the CRP bulk tables (which I haven't worked with directly). What separates the two fields (income vs expenses) is whether the spending was direct by a firm using in-house lobbyists (expenses reported by the firm directly), vs contracted to a lobbying firm (income reported by the lobbying firm). If these are collapsed in the OpenSecrets tables, the only option might be going through the LDA API. I have some custom software that automates a lot of this and exports to CSV files and which separates the two fields if you need them for your analysis. As I say maybe it's somewhere in the OS tables but my process is orthogonal.

Matthias

Helena Bach

unread,
Jan 28, 2025, 2:29:03 AMJan 28
to OpenSecrets Open Data
Hi Matthias, 

Thank you very much for your reply. 
I actually started working with the LDA API but wrote a code that wasn't managing to get all the data for all firms (only some quarters). If you could share your software that automatically does this I would be super grateful. 

Thank you again, 

Helena

dau...@opensecrets.org

unread,
Jan 29, 2025, 11:27:52 AMJan 29
to OpenSecrets Open Data
Hi Helena,
Mathias's response is correct (Thank you!) and specifically, yes OpenSecrets collapses those two fields into a single "Amount" field. You can distinguish which are income (lobby firm) versus expenses (organization paying the lobby firm) by looking at the isfirm field, which will be Y when the report is filed by a lobbying firm. That field is primarily populated by looking at cases where the registrant and client fields are different. 

For example, where uniqid = 6547489f-dbee-47bc-9c73-4bbe9a1fa4c0 they differ and the amount would translate to income. Where uniqid = fded7663-da16-4afa-85f2-d25f27948056 they are the same so amount would translate to expenses.

Regarding issue aggregation, the unfortunate answer is that it is not possible to calculate an accurate dollar amount spent on any issue. First, there are multiple issues listed on most reports but no way to know what portion applies to one issue compared to another. Second, you encounter double counting when adding self filed reports and outside firm reports for the same client. In other words, if the organization has an in-house lobbying operation and files their own reports, the dollar amount listed in expenses should also include any spending on outside firms. The simplest way to deal with the second issue by using the criteria ind='y' to avoid double counting but the first problem remains.

Please let me know if I can clarify anything further.

Best,
Dan Auble
Senior Researcher
OpenSecrets

Helena Bach

unread,
Jan 30, 2025, 2:55:39 AMJan 30
to OpenSecrets Open Data

Hi Dan,

Thank you so much for your clear explanation!

If I want to aggregate yearly lobbying income (regardless of the issue), which reports should I retain—quarterly or year-end?


Thank you again, 

Helena


Matthias Rémy

unread,
Jan 30, 2025, 9:14:52 PMJan 30
to OpenSecrets Open Data
Hi all,

I've created a github repository with the lobbylinks module, which handles automated queries to the LDA database and has utilities for visualizing the lobby network.


There''s a quickstart guide and installation script. I will be adding to the documentation over time.

If other researchers can get utility from these I would be thrilled! Feel free to get in touch if you encounter any issues, I think the documentation I wrote up should handle Helena's use case.

Thanks for giving me the opportunity to finish open-sourcing this software ;)

Matthias

Helena Bach

unread,
Jan 31, 2025, 5:55:37 AMJan 31
to OpenSecrets Open Data
Hi Matthias, 

Thank you so much for sharing the github link and developing this software. It is very useful!
---------------

I have another question, is there any way to obtain the zip code of the Client in the Open Secrets data? Otherwise, I should use the package created by Matthias to also store the zip code of the Client (as this information appears for the LDA databaset). 

Thank you again, 

dau...@opensecrets.org

unread,
Jan 31, 2025, 9:22:04 AMJan 31
to OpenSecrets Open Data
Hello,
Starting in 2008, reports are filed quarterly and you should use all four to get a total for the year. Prior to that (1998-2007) they were filed semi-annually, and both the mid-year and end-year need to be included.
Best,
Dan

Reply all
Reply to author
Forward
0 new messages