Wendy Leuenberger, Jeffrey W. Doser, Michael W. Belitz, Leslie Ries, Nick M. Haddad, Wayne E. Thogmartin, and Elise F. Zipkin
Please contact the first author for questions about the code or data: Wendy Leuenberger (leuenbe9@msu.edu)
Insects are declining worldwide. These declines have been documented across taxonomic groups and are worrisome given ecosystem services provided by insects. Long-term data have illuminated butterfly declines across geographic regions. However, critical questions remain on how butterfly declines are distributed across species and functional groups, limiting effective conservation. Here we show unprecedented changes in butterfly biodiversity resulting from 32 years of species-levels declines throughout the Midwestern United States. No species increased over the three-decade study period and abundance declined across every functional group (e.g., rare, common, migratory, resident; annual mean trend: -0.9 to -2.3% per year). Species richness declined across all but one functional group, with concomitant increases in evenness (e.g., abundance among species) in several groups resulting from steeper losses in abundance for common species (abundance: -1.9% per year; richness: -0.04% per year) as compared to rare species (abundance: -0.9% per year; richness: -1.33% per year). Our results paint a bleaker picture than other butterfly studies (Breed et al. 2013, Halsch et al. 2021, Edwards et al. 2025), likely due to our long time series of data and ability to include rare species. Such widespread declines undoubtedly affect other trophic levels and ecosystem services. Our results indicate that focusing risk assessments and management interventions only on rare species is insufficient given broad declines across species, which have fundamentally restructured butterfly communities in the region. As such, conservation efforts should shift focus to species assemblages and entire communities when possible.
- Code: Contains all code files used for the project
- Data: Contains publicly available data files use for the project
- Data preparation:
- FormatDataCh1.R: R code used to take raw data and create cleaned objects ready for analyses. Output is used in TryModel_spAbundance.R
- SpeciesFunctionalTraits.R: R code used to link species with their traits. Used in Abundances.R, Diversity.R, Richness.R, and MultiMetricFigures.R
- Model running:
- TryModel_spAbundance.R: R code used to select a specific group of butterflies for analyses, perform some final data preparation, and begin the model fitting process. Models take a long time to finish, so these models are continued in UpdateModel_spAbundance.R
- UpdateModel_spAbundance.R: R code used to continue the model runs after TryModel_spAbundance.R.
- Post processing:
- PostProcess_MsAbund.R: Code that takes several model runs, puts them together, checks convergence, and does some initial abundance and richness processing. This code is run separately for each group that is used for modeling. These outputs aren't ready for interpretation; needs to be combined across groups in the next step.
- Results:
- Abundances.R: Calculates species-specific, group, and overall patterns in abundance. Includes code to make figure 3 (abundance trends).
- Richness.R: Calculates species-specific, group, and overall patterns in richness.
- Diversity.R: Calculates species-specific, group, and overall patterns in evenness (Shannon diversity).
- Synthesis:
- MultiMetricFigures.R: Takes output from Abundances.R, Richness.R, and Diversity.R to make composite figures (Figure 2) and tables.
- Map_Figure1.R: Takes survey data and creates a map of the number of surveys per location (Figure 1).
- Batch files for super computer:
Note: likely specific to MSU's ICER HPCC at the time of running. It might be a helpful starting place but wouldn't be ready to use as-is.
- run_BCSmodel_msAbund.sb: Runs the code in TryModel_spAbundance.R. Runs one chain; run command 5 times to run 5 chains.
- run_UpdateModel.sb: Runs the code in UpdateModel_spAbundance.R. Updates the specified chain only.
- run_PostProcess.sb: Runs the code in PostProcess_MsAbund.R
Note that additional folders (e.g. 'Output', 'Output/1_runs') would be necessary to save output from the Post-process, Results, and Synthesis steps, as specified in the code.
Proprietary; see below for data availability statement
- [NABAAllData_1977toOct2022.csv]: Data from NABA surveys. Includes survey information (location, date, GPS coordinates, party hours [time spent surveying x number of people]) as well as butterflies observed (species name, species code, number observed).
- [IA IL MI Pollardbase data through 10.04.2023.xlsx]: Butterfly surveys (location, date, GPS coordinates, duration) and observations (species name, species code, number observed) from the Illinois Butterfly Monitoring Network, the Iowa Butterfly Survey Network, and the Michigan Butterfly Network.
- [Pb-route-latlon-IA-IL-MI.xlsx]: Survey-level information (route, state, county, GPS location) from the Illinois Butterfly Monitoring Network, the Iowa Butterfly Survey Network, and the Michigan Butterfly Network
- [GU Ohio 2022 Flat File All Observations.xlsx]: Butterfly surveys (location, date, GPS coordinates, duration) and observations (species name, species code, number observed) from the Ohio Lepidopterists.
- CountyCovariates_percOpenNoWaterNoUrb.csv: County-level data on proportion of open land, excluding water and urban land covers.
- totalSites_propOpen_noWaternoUrb.csv: Site-level data on proportion of open land, excluding water and urban land covers. Includes location ID and program.
- BflyNames.csv: Contains family, NABA Code (
UMD_Code
), scientific name, common name, and additional information about each species in the NABA dataset. - ButterflyTraitGroups.csv: Initial functional trait groupings for butterfly species, based on LepTraits and expert knowledge. Split species into four groups: migratory, resident univoltine, resident generalist, and resident specialist. Includes a count of observations, but those numbers are not the final count.
- traits_w_disturb.nov2023.csv: Trait data from Mike and Elise Larsen, used for overwintering (diapause) data.
- TraitsButterfly.csv: Trait data from Mike and Elise Larsen, used to check a couple of overwintering stages (diapause).
- CountyKey.RData: County indicator and county name, used to keep track of which county is which during post-processing. Originally created in TryModel_spAbundance.R, line 214 (commented out)
Covariate data and data regarding names and groups are available. Butterfly data are proprietary and were obtained from the North American Butterfly Association (https://www.naba.org/), the Iowa Butterfly Survey Network (https://www.reimangardens.com/collections/insects/iowa-butterfly-survey-network/), the Illinois Butterfly Monitoring Network (https://bfly.org/), the Michigan Butterfly Network (https://michiganbutterfly.org/) and the Ohio Lepidopterists (http://www.ohiolepidopterists.org/). These data may be available upon reasonable request to LR and with permission from the aforementioned programs.
Code needed to run analyses (R scripts) is available at this GitHub repository: https://github.com/wleuenberger/ButterflyCommunityTrends.