Skip to content
« Back to the budget

Frequently asked questions

Who is responsible for providing services in Oak Park?

Oak Park has six main governing bodies that collect taxes and provide services within the village.

Why focus on The Village of Oak Park?

We started with The Village of Oak Park’s budget because it is Oak Park's governing body.

Who are The Village of Oak Park’s elected officials?

The Village of Oak Park operates under the Village Manager form of government. An elected Village Board, with a president and six trustees, sets policy and hires a professional manager to oversee day-to-day operations and the delivery of municipal government services. The elected Village Clerk records the proceedings of all Village Board meetings and special meetings; maintains all official legislative records, certifications, and the Village seal; and monitors Village compliance with the Illinois Open Meetings Act and Illinois Freedom of Information Act.

What services does The Village of Oak Park provide?

The Village of Oak Park's responsibilities include creating a safe community; protecting the community's public health; maintaining municipal infrastructure; and managing land use (building codes and urban planning). To provide the related services, the Village operates the Fire, Police, Public Health, and Public Works departments, among other smaller departments.

Where can I find The Village of Oak Park’s budget?

The budgets are posted on The Village of Oak Park’s website.

What is included in this website?

This website includes the Village's expenses, as reported in its actual budget documents. The funds, departments, and descriptions are as the Village officially reports. All expenses, except for the current and previous year, are actual expenses as reported in published budget documents. Estimates for the current and previous year are pulled from the current fiscal year’s budget. All expenses and their coding is unchanged by us, with the exception of merging duplicate line items.

The website has two main views: Function and Fund. To help community members understand the budget, we created eight functional areas and grouped each line item with the best matching function. This is the Function view. The Fund view organizes the expenses by fund and department as shown in the budget documents.

Are interfund transfers included?

The Village codes interfund transfers as expenses in its budgets. For consistency, these interfund transfers are likewise included as expenses in this website. These transfers can be found in the interfund transfers grouping in the function view and interspersed with their originating fund/department in the fund view. Many of these transfers, as well as some debt payments, are coded as expenses for the Finance Department. Because of this, the Finance Department’s expenses appear larger than the actual costs associated with operating the department.

How did you group expenses by functional area?

A functional area is grouping of budget line items by general programmatic purpose. Many states and municipalities group their budgets by functional areas to help people understand how resources are allocated. Because the Village of Oak Park does not use functional areas, we created a set of six functions that represent the Village's main services and two functions that isolate special accounting features in the budget. The following definitions describe what is included in each function.

How did you build it?

This project had two primary parts: the data collection and cleanup, and the website itself. All of the code and data are open source on GitHub.

The website was built by Derek and is based off of the open source Budget Breakdown code developed by Derek Eder, Nick Rougeux, Open City and DataMade, which has been used to visualize budgets for Cook County and Macoupin County, IL, the City of New Orleans, Washington State, and New York State. We customized the code to fit Oak Park’s budget and match the colors of the Village flag.

The data was collected, extracted, and cleaned by Alicia. Using an open source tool called Tabula, she was able to extract budget tables from the adopted budget PDFs. Once the data from each budget was extracted into its own spreadsheet, we merged the set into one spreadsheet containing all the years' budget data using our data cleanup script.

To understand how we verified that our converted budget data matched the source documents, it is helpful to understand what each expense table in the budget document includes. For our purposes, we focused on two amounts for each expense line item:

To illustrate this format, here is page 70 of the Fiscal Year 2021 Budget:

Page 70 of the Oak Park Village Fiscal Year 2021 Budget

The 2021 Budget includes actual expenses for 2018 and 2019, as well as, the adopted budget expenses for 2021. After pulling the expenses for 2018, 2019, and 2021, we totaled up the values for each year. To ensure our data was correct, we compared our total 2021 expenses with the total reported in the 2021 Budget. The budget documents do not include totals for actual expenses in prior years. So, when our total for the adopted budget expenses matched the same reported in the budget, we were assured that we had captured all three years of data correctly. Once the totals matched, we doubled checked our data by visually comparing our spreadsheet with the source PDF documents to catch any omissions or errors. None were found.

Were there any issues with the budget data?

There were several issues we encountered when preparing the budget data for this site:

More questions?

If you have additional questions not already answered in this FAQ, please email us at