You can use Geocodio to add school district information for US addresses and latitude/longitude coordinate pairs.
You can upload a spreadsheet of addresses or coordinates, or use our API.
If your addresses are in a spreadsheet, just select "School districts" in Step 3 of the upload process. You can programmatically add school districts via our API (see API documentation here).
In the case of a unified district, this information will be returned once. For areas with separate elementary and secondary districts, the information will be returned for both districts.
Requests are billed as geocode + school district info (i.e., two lookups). For example, if you have 100 addresses that you want school districts for, that would count as 200 lookups.
You can calculate how much this will cost you and how long it will take here.