Automating Donor Philanthropy

My approaches are peculiar to my background and purpose, but the software is customizable through user modification of input parameters. Two of my data sources and strategies around them illustrate my approach.

Phase 1: Form 990 in Excel

I wrote this code in 2025 with data downloaded from government websites and processed with Excel VBA code. That software is accessible on GitHub. Click this link to go to github.com/royrada/Automating-Philanthropy for my GitHub site of Excel VBA code to score IRS Form 990s. Or for a local copy of the README click here.

Phase 2: Webscraper for Minimum Endowment

A key issue in funding an endowment is the amount of money required. My Python webscraper goes to the website of 501c3 entities that are suggested by the Phase 1 software and looks for quotes that specify the amount of money required to endow a fund. That software is accessible on GitHub. Click this link to go to github.com/royrada/min-endow-scraper and get my Python web scraper to discover endowment limits.

Two local descriptions are

Phase 3: IRS Master File

A challenge with the Phase 1 system was classifying the entities based on their mission description on their Form 990. However, the IRS Business Master File does the hard work of classification with NTEE codes. This Phase 3 upgrades Phase 1 in several ways, including that the system uses a SQL RDBMS and Python rather than Excel workbooks and VBA. First the BMF is downloaded and used to classify entities, then the Form 990s are downloaded and filtered to pick the best ones according to user definable criteria.

That software is accessible on GitHub. Click this link to go to github.com/royrada/filter-IRS-990-BMF and access the Python and RDBMs system that in a user-customizable pipeline downloads IRS data, imports the data into the RDBM system, classifies the 501c3 entities, and rank orders them.

Three local descriptions are

Phase 4: Scholarship Directory

What other data might usefully guide the donor's search for worthy donees? In the space of scholarships, an interesting source is the Labor Department's directory of 10,000 scholarships. My program visits that directory and determines how many scholarships each entity offers and what the URL is for each entity. That software is accessible on GitHub. Click this link to go to github.com/royrada/scholarship-scraper and get my Scholarship scraper.

The URLs of the most active entities are then fed to the webscraper that finds minimum endowment amounts. Parenthetically, as a lifelong student or professor my world had been education entities, and only through the Scholarship Directory did I learn to appreciate the role of Community Foundations in the endowed scholarships space.