Download the Ocean Count data
Nine CSV files hold the Sanctuary Ocean Count results we have compiled from January 26, 2002 to March 28, 2026, and two more hold the 2001 report and the count’s first years. Separate files, not Ocean Count data, hold the Great Whale Count on Maui, humpback song detections, published abundance estimates and whale injury reports. Each row links to the document it came from, so you can check any number against the sanctuary’s own sheet, release or report; current results are on oceancount.org. Dataset version: 2026-09-28.
Files
ocean-count-island-averages.csv: island averages printed on the results sheets, January 26, 2013 to March 28, 2026, one row per count per island, 128 rows. It holds the island average whales per 15-minute count period, with a flag for whether the value was printed as a whole number or with decimals. Molokaʻi has no rows before 2024, when its sites first appear on the sheets.
ocean-count-count-summary.csv: one row per count from the press releases, 44 rows from January 2008 to March 2026. It holds headcounts, reporting sites, the busiest 15-minute period and day totals per island, and the statewide average per site that seven releases from 2008 to 2011 state. Headcounts before 2019 cover the Ocean Count alone; from 2019 most also include the Great Whale Count.
ocean-count-press-release-island-averages.csv: island averages stated in press releases, 2008 to 2012, 51 rows. The results sheets from those years print no island average, so these come from the release text instead and are kept apart from the results-sheet file. Kahoʻolawe appears in 2008 and 2009, and a release_note column keeps notes such as “Did not participate”.
ocean-count-report-island-averages.csv: island means stated in the sanctuary’s annual reports, 2002 to 2004, 27 rows, each with its standard error and the sentence that states it. A note column flags the figures the reports appear to have copied from another island or year.
ocean-count-report-site-averages.csv: per-site averages from the sanctuary’s 2010 report, 2002 to 2010, one row per site per count, 1,701 rows, 1,552 of them with a value. Every value is a whole number typed in from the report’s tables, and each row gives the report page it came from.
ocean-count-site-periods.csv: every site and 15-minute period on the 2007 to 2026 results sheets, 59 counts and 30,645 rows, one per count, site and period. It holds adults and calves as printed. The 2007 to 2011 and 2015 to 2025 tables are images we typed in by hand. The transcription column marks those rows, and the excluded_from_our_averages column flags the four cells we leave out of our own averages.
ocean-count-kahoolawe-periods-2003-2004.csv: whales per 15-minute period at the one site counted on Kahoʻolawe each year (Kui Kui in 2003; Kalialua, also printed Kealialuna, in 2004), from the 2003 and 2004 annual reports, 38 rows. The reports give no adult and calf split, and bad weather canceled the February and March 2004 counts there.
ocean-count-report-behavior-by-site-2002-2010.csv: surface behavior per whale at each site from the sanctuary’s 2010 report, breaches and slaps for 2002 to 2010 and dives for 2006 to 2010, 4,347 rows, one per site, season, month and behavior. The report divides the behaviors recorded in each time block on the behavior sheet by the whales seen in it. Values are as printed; where the report’s island summaries disagree with its own site tables, we keep the site tables.
ocean-count-report-calves-by-period.csv: calves and adults per 15-minute period for each island from the 2010 report, 590 rows: Kauaʻi for every count from 2002 to 2010, Oʻahu and Hawaiʻi Island for 2002 and 2007 to 2010, and Kahoʻolawe for February and March 2008. Three of the report’s tables print a total that does not add up; the note column says which.
ocean-count-2001-report-values.csv: every number in the sanctuary’s 2001 report, 520 rows: each site’s whales in each of the four 15-minute scans on February 24, 2001, the island figures in the report’s text, and our sums of each scan. The 2001 count had one day and four scans, so keep it apart from the files above. Where the report disagrees with its own tables, the value column keeps the printed figure and recomputed gives what the tables give.
ocean-count-early-history-statements.csv: 13 dated statements about the count’s first years, 1996 to 2002, each with its source and the statements it disagrees with.
great-whale-count-maui-release-figures.csv: 23 rows, January 2019 to March 2026, of Maui figures from Pacific Whale Foundation’s Great Whale Count, as the joint releases state them. The Great Whale Count is a separate shore count, held on the same Saturdays as the Ocean Count since 2019.
The file holds the sites that reported, the busiest 15-minute period and the day totals for Maui and, from 2024, Lānaʻi. The releases give Maui a whole-day total and a busiest-period count instead of an island average per 15-minute period, so never add these to the Ocean Count figures. Our Maui page sets out how the two counts differ and lists the 11 Maui sites.
sanctsound-humpback-song-weekly-2018-2021.csv: a separate series, the weekly share of 30-second recordings with humpback song at four SanctSound recorders in the 2018–19, 2019–20 and 2020–21 seasons, 220 rows, one per site and week, with the hours recorded each week; 12 weeks under 84 hours are flagged partial_week and not charted. It comes from NOAA and the U.S. Navy, not from the Ocean Count, so never combine it with the count figures. Our song page charts it, and our methods page explains the weekly rule.
hawaii-humpback-abundance-estimates.csv: published abundance estimates for Hawaiʻi humpback whales, 25 rows from two sources that a source column keeps apart. Of these, 21 are the non-calf abundance estimates for each breeding season from 2002/03 to 2022/23 in Barber-Meyer et al. (2026); the authors exclude the first one, and a column flags it. The other four come from NOAA Fisheries’ stock assessment report for the Hawaiʻi stock. These are not Ocean Count figures.
whale-injuries-hawaii.csv: whale entanglement and vessel-collision report counts from two NOAA sources, 555 rows, kept apart from the Ocean Count files: the sanctuary’s season-end entanglement response reports, every season we found from 2005–06 to 2024–25, each with its own window, species and units, and NOAA Fisheries’ humpback injury determinations for 2007 to 2021 by determination category. Both count reported and confirmed cases, a minimum, and both draw on the same response network, so never add them together. Our methods page describes both sources.
Data dictionary
All fifteen files are UTF-8 CSV with a header row. Empty cells mean the source did not give the value. Island names keep the ʻokina (the glottal-stop mark, Unicode U+02BB), so open the files as UTF-8 if a spreadsheet shows stray characters.
ocean-count-island-averages.csv
Island averages printed on the results sheets. One row per count per island. 128 rows.
| Column | Type | Meaning |
|---|---|---|
count_date | date (ISO 8601, YYYY-MM-DD) | Date of the count, as printed in the results sheet’s “Preliminary Data” title. |
season | integer (year) | Whale season the count belongs to. Counts run January to March, so the season is the calendar year of the count. |
count_month | text | January, February or March. |
island | text | Island name as the sanctuary writes it, with the ʻokina (Hawaiʻi means Hawaiʻi Island). |
island_id | text | ASCII key for the island: kauai, oahu, molokai, hawaii. |
avg_whales_per_15min_period | number | The island figure printed on the sheet as “Average Number of Whales per 15min Count Period” (“15 min.” on the 2026 sheets), copied exactly as printed (not re-rounded). See unit. |
unit | text | Unit of avg_whales_per_15min_period: humpback whales per 15-minute count period, island average, as published. |
reported_precision | text | How precisely this value was printed: “whole number”, “1 decimal” or “2 decimals”. Derived from the printed value, so a whole number may be a rounded average. |
decimal_places | integer | Number of decimal places in the printed value (0, 1 or 2). |
sheet_reports_decimals | boolean (true/false) | true when any island value on the same results sheet was printed with decimals. Some sheets print decimals only for small values, so a whole number on a sheet flagged true may still be rounded. |
data_status | text | Always “preliminary”: every results sheet is titled “Preliminary Data”. |
source_document | text | Type of source document. |
source_publisher | text | Who published the source document. |
source_url | URL | The official results sheet (PDF) the value was taken from. |
ocean-count-count-summary.csv
One row per count, from the press releases. 44 rows.
| Column | Type | Meaning |
|---|---|---|
count_date | date (ISO 8601) | Date of the count. |
season | integer (year) | Whale season (calendar year of the count). |
count_month | text | January, February or March. |
participants | integer (people) | Headcount given in the release. From 2019, most releases give the combined headcount for the Sanctuary Ocean Count and Pacific Whale Foundation’s Great Whale Count on Maui; the 2008 to 2015 releases count Ocean Count volunteers only. See participants_include_maui_great_whale_count. |
participant_role | text | ”volunteers”, or “site leaders” for the COVID-era counts when only trained site leaders took part. |
participants_qualifier | text | How the release states the headcount: “more than”, “about”, or empty when it gives the number plainly. |
participants_include_maui_great_whale_count | boolean | true when the headcount sentence also covers the Great Whale Count on Maui (and Lānaʻi in later years). |
soc_sites | integer (sites) | Number of Sanctuary Ocean Count sites that reported (Great Whale Count sites excluded). Empty when the release gives only a combined figure. |
soc_busiest_period_whales | integer (whales) | Whales counted across all Sanctuary Ocean Count sites in the busiest 15-minute period of the day. Empty when the release gives only a combined figure or names no busiest period. |
soc_busiest_period_start | time (HH:MM, Hawaiʻi time) | Start of that busiest 15-minute period. Empty when the release gives only a combined figure or names no busiest period. |
soc_busiest_period_end | time (HH:MM, Hawaiʻi time) | End of that busiest 15-minute period, as the release states it. |
day_total_whales_kauai | integer (whale sightings) | Total whales reported for the whole day on Kauaʻi. The releases warn this may include the same whale seen more than once. |
day_total_whales_oahu | integer (whale sightings) | Same as day_total_whales_kauai, for Oʻahu. |
day_total_whales_molokai | integer (whale sightings) | Same as day_total_whales_kauai, for Molokaʻi. |
day_total_whales_hawaii | integer (whale sightings) | Same as day_total_whales_kauai, for Hawaiʻi Island. |
statewide_avg_whales_per_site_per_15min | number | Average whales per site per 15-minute period across the state, as stated in the release. Only seven releases, from 2008 to 2011, state one. |
statewide_note | text | Our note where the 2010 report’s site averages for the same count disagree with the stated statewide figure by 1.5 or more. |
data_status | text | Always “as stated in the release”. No release calls its own headcounts or totals preliminary; where a release uses the word, it refers to the results sheets. |
source_document | text | Type of source document. |
source_publisher | text | Who published the source document. |
source_url | URL | The official press release or community announcement (PDF). |
ocean-count-press-release-island-averages.csv
Island averages stated in the press releases, 2008 to 2012, kept out of ocean-count-island-averages.csv. One row per count per island named in the release. 51 rows.
| Column | Type | Meaning |
|---|---|---|
count_date | date (ISO 8601) | Date of the count. In 2010 the February count was held on March 6 (see schedule_note). |
season | integer (year) | Whale season (calendar year of the count). |
count_month | text | Calendar month of the count date. |
island | text | Island as named in the release, with the ʻokina. Includes Kahoʻolawe in 2008 and 2009. |
island_id | text | ASCII key for the island. |
avg_whales_per_15min_period | number | Average number of whales per 15-minute count period for the island, as stated in the release text. Empty when the release gives a note instead of a number. |
unit | text | Unit of avg_whales_per_15min_period. |
reported_precision | text | ”whole number” or “N decimal(s)”, from the stated value. Empty when there is no value. |
decimal_places | integer | Decimal places in the stated value. Empty when there is no value. |
release_note | text | Note the release gives for this island and count, such as “Did not participate in January count” or “Cancelled due to inclement weather”. |
schedule_note | text | Our note when the count was held off its scheduled date, from the release. |
data_status | text | Always “as stated in the release”: the 2008 to 2012 releases do not call their figures preliminary. |
source_document | text | Always “press release”. |
source_publisher | text | Who published the release. |
source_url | URL | The release, usually an Internet Archive (Wayback Machine) copy of the sanctuary’s page. |
ocean-count-report-island-averages.csv
Island means stated in the sanctuary’s annual reports, 2002 to 2004. One row per count per island. 27 rows.
| Column | Type | Meaning |
|---|---|---|
count_date | date (ISO 8601) | Date of the count: the last Saturday of the month. The 2002 report prints the March date as “26 March”, which was a Tuesday (see note). |
season | integer (year) | Whale season (calendar year of the count). |
count_month | text | January, February or March. |
island | text | Island as named in the report, with the ʻokina. |
island_id | text | ASCII key for the island. |
avg_whales_per_15min_period | number | Mean number of whales per site per 15-minute count period for the island, as stated in the annual report’s text, with two decimals. |
standard_error | number | Standard error the report gives with that mean. |
unit | text | Unit of avg_whales_per_15min_period. |
reported_precision | text | ”2 decimals” for every row. |
decimal_places | integer | Decimal places in the stated value. |
note | text | Our note: a figure the report repeats from another island or count, a date the report misprints, or the report’s own warning about weather. We copy the printed value and do not correct it. |
data_status | text | Always “as stated in the annual report”. |
source_document | text | The annual report: author, year, title and publisher as printed on its title page. |
source_publisher | text | Who the report was prepared for. |
source_quote | text | The sentence in the report that states the value. |
source_url | URL | The report on NOAA’s sanctuary website (PDF). |
ocean-count-report-site-averages.csv
Per-site averages from the sanctuary’s 2010 report, 2002 to 2010. One row per site per count. 1,701 rows.
| Column | Type | Meaning |
|---|---|---|
count_date | date (ISO 8601) | Date of the count. The report labels counts by month only, so this is the last Saturday of that month, except February 2010, held on March 6 (tsunami warning). |
season | integer (year) | Whale season (calendar year of the count). |
count_month | text | The count as the report labels it: January, February or March (February 2010 was held on March 6). |
island | text | Island, with the ʻokina. |
island_id | text | ASCII key for the island. |
site_number | integer | Our site number (the program’s numbering on its maps and sheets). Empty for two report sites we could not match to a site on our list. |
site_name | text | Our site name, with ʻokina and kahakō. |
report_site_number | integer | Site number as the report prints it. |
report_site_name | text | Site name as the report prints it. |
coastline | text | Coast the site faces, from our site list. |
avg_whales_per_15min_period | integer | The report’s “average number of humpback whale sightings per 15-minute count period” for this site and count, printed as a whole number. Empty when the report prints NA. |
reported | boolean (true/false) | false when the report prints NA: in its words, a site closure, no data sheet for the site, or unreliable data. A 0 means no whales were seen. |
unit | text | Unit of avg_whales_per_15min_period. |
reported_precision | text | Always “whole number”. |
note | text | Our note, for example where the report prints one site’s values under another site too. |
data_status | text | Always “as printed in the report”. |
source_document | text | The 2010 report, with author, title and date. |
source_publisher | text | Who the report was prepared for. |
source_url | URL | The Internet Archive’s copy of the report part that holds the site’s page. |
source_page | integer | Printed page number of the site’s table in the report. |
ocean-count-site-periods.csv
Every site and 15-minute period on the 2007 to 2026 results sheets (59 counts). One row per count per site per period, as printed. 30,645 rows.
| Column | Type | Meaning |
|---|---|---|
count_date | date (ISO 8601) | Date of the count, from the results sheet. |
season | integer (year) | Whale season (calendar year of the count). |
count_month | text | January, February or March. The February 2010 count was held on March 6 (tsunami warning). |
island | text | Island, with the ʻokina. |
island_id | text | ASCII key for the island. |
sheet_row | integer | The row number the sheet prints for the site. The program renumbers some rows between seasons, so use site_number to follow a site across years. |
sheet_site_name | text | The site name as the sheet prints it. In the tables we typed in (2007 to 2011 and 2015 to 2025), the apostrophe or ʻokina is our best reading of the image. |
site_number | integer | Our site number (the program’s numbering on its 2026 maps and sheets). Empty for ʻŌʻōkala (row 22 on Hawaiʻi Island through 2014, row 21 in 2009) and Paukaʻa Point (row 21 in 2007 and 2008), which have no current number. |
site_name | text | Our site name, with ʻokina and kahakō, the same on every row for a site. |
period_start | time (HH:MM, Hawaiʻi time) | Start of the 15-minute count period. The count has nine: one every half hour from 08:00 to 12:00. |
period_end | time (HH:MM) | End of the period, 15 minutes after the start. |
adults | integer | Adult whales the site recorded in the period, as printed. Empty when the site did not report the period. |
calves | integer | Calves the site recorded in the period, as printed. Empty when the site did not report it (and in one cell printed “3/P”, see note). |
whales | integer | adults + calves: the count behind our reading of the printed island averages (see our methods page). |
reported | boolean (true/false) | false when the sheet prints no count for the period: the site was not used that month, was no longer a count site, or the cell reads N/A, rain, break or similar (the printed words are in note). |
excluded_from_our_averages | boolean (true/false) | true for four cells we read as misprints and leave out of our own site averages: at the corrected value, each table matches both the press release’s day total and the sheet’s island average. The printed values are kept. |
note | text | The sheet’s own words for a cell or row with no count, or our note on a printed value. |
transcription | text | ”text layer of the PDF” (2012 to 2014 and 2026) or “typed in by hand from the sheet’s image” (2007 to 2011 and 2015 to 2025). |
source_url | URL | The results sheet (PDF): oceancount.org, or an Internet Archive copy of the sanctuary’s former site. |
ocean-count-kahoolawe-periods-2003-2004.csv
Whales per 15-minute period at the one site counted on Kahoʻolawe each year, from the 2003 and 2004 annual reports. One row per count per period. 38 rows.
| Column | Type | Meaning |
|---|---|---|
count_date | date (ISO 8601) | Date of the count on Kahoʻolawe. The March 2003 count there was held on April 5. |
season | integer (year) | Whale season (calendar year of the count). |
count_month | text | The count as the report labels it: January, February or March. |
island | text | Always Kahoʻolawe. |
island_id | text | Always kahoolawe. |
period_start | time (HH:MM) | Start of the 15-minute period. Empty on the two rows for counts canceled because of weather. |
period_end | time (HH:MM) | End of the period. |
whales | integer | Whales counted in the period at the one site counted on Kahoʻolawe that year (Kui Kui in 2003; Kalialua, also printed Kealialuna, in 2004), as printed. The reports give no adult and calf split. Empty where the table prints a dash (in January 2004 the count there started at 9:00, so the first two periods are empty) or the count was canceled. |
note | text | The site name the report uses and anything the report says about the count. |
data_status | text | Always “as printed in the annual report”. |
source_document | text | The annual report: author, year, title and publisher. |
source_publisher | text | Who the report was prepared for. |
source_table | text | The table and page, with its caption. |
source_url | URL | The report on NOAA’s sanctuary website (PDF). |
ocean-count-report-behavior-by-site-2002-2010.csv
Surface behavior per whale at each site, by season and month, from the sanctuary’s 2010 report: breaches and slaps 2002 to 2010, dives 2006 to 2010. One row per site per season per month per behavior. 4,347 rows.
| Column | Type | Meaning |
|---|---|---|
season | integer (year) | Whale season (calendar year of the counts). |
count_month | text | January, February or March: the report’s average over that month’s count. |
island | text | Island, with the ʻokina. |
island_id | text | ASCII key for the island. |
site_number | integer | Our site number, matched through the report’s census tables. Empty where we could not match the report’s site. |
site_name | text | Our site name, with ʻokina and kahakō. |
report_site_number | integer | Site number as the report prints it. |
report_site_name | text | Site name as the report prints it (its spelling, uncorrected). |
behavior | text | breaches, slaps (pectoral fin, head or tail) or dives. The report gives dives from 2006 only. |
per_whale | number | The report’s average for this behavior per whale: in its words, “the number of behavioral occurrences” divided “by the number of whales sighted in the particular time interval”, averaged over the count. As printed, usually two decimals. Empty where the report prints NA. |
reported | boolean (true/false) | false where the report prints NA: in its words, “a site closure, the lack of a behavioral data sheet for the site or unreliable behavior data information”. A 0 means no behavior was seen. |
unit | text | Unit of per_whale. |
note | text | Our note on a printed value, for example values the report repeats from another site. |
data_status | text | Always “as printed in the 2010 report”. |
source_document | text | The 2010 report. |
source_page | integer | The report’s printed page number. |
source_url | URL | The Internet Archive’s copy of the report part (PDF). |
ocean-count-report-calves-by-period.csv
Calves and adults per 15-minute period for each island, from the 2010 report: Kauaʻi every count from 2002 to 2010, Oʻahu and Hawaiʻi Island in 2002 and 2007 to 2010, Kahoʻolawe in February and March 2008. One row per count per island per period, plus the report’s total row. 590 rows.
| Column | Type | Meaning |
|---|---|---|
season | integer (year) | Whale season (calendar year of the count). |
count_month | text | January, February or March, as the report labels the count (the February 2010 count was held on March 6). |
island | text | Island, with the ʻokina. |
island_id | text | ASCII key for the island. |
period_start | time (HH:MM) | Start of the 15-minute period. Empty on the total row. |
period_end | time (HH:MM) | End of the period. Empty on the total row. |
row | text | ”period” for one 15-minute period, “total” for the report’s total over the morning. |
calves | integer | Calves sighted in the period at all the island’s sites, as printed. |
adults | integer | Adults sighted, as printed. |
whales_as_printed | integer | The report’s total whales for the period. Three tables print a total that is not calves plus adults or not the column sum; we keep the printed value and say so in note. |
pct_calves_as_printed | text | The report’s percentage of calves, with its % sign. |
note | text | Our note on a printed value that does not add up. |
data_status | text | Always “as printed in the 2010 report”. |
source_document | text | The 2010 report. |
source_page | integer | The report’s printed page number. |
source_url | URL | The Internet Archive’s copy of the report part (PDF). |
great-whale-count-maui-release-figures.csv
Pacific Whale Foundation’s Great Whale Count on Maui, as stated in the joint releases, 2019 to 2026. One row per count. A separate program: never combine these with the Ocean Count figures. 23 rows.
| Column | Type | Meaning |
|---|---|---|
count_date | date (ISO 8601) | Date of the count. Since 2019 the Great Whale Count is held on the same Saturdays as the Sanctuary Ocean Count. |
season | integer (year) | Whale season (calendar year of the count). |
count_month | text | January, February or March. |
program | text | Always “Great Whale Count”: Pacific Whale Foundation’s shore count on Maui (and from 2024 one site on Lānaʻi). It is a separate program from the Sanctuary Ocean Count; these figures are never part of the Ocean Count columns in the other files. |
gwc_sites | integer (sites) | Number of Great Whale Count sites that collected data, as the release states it. Empty when the release does not say. |
gwc_sites_scope | text | What gwc_sites covers, as worded in the release: “Maui” or “Maui and Lānaʻi”. |
gwc_busiest_period_count | integer | Whales (or “whale sightings”, see gwc_busiest_period_unit) counted across the Great Whale Count sites in the busiest 15-minute period of the day. Empty when the release gives only a combined statewide figure for the busiest period (February 2024, February 2025 and all of 2026), and for January 2023, when one site reported and the release names no busiest period. |
gwc_busiest_period_unit | text | The release’s own word for that figure: “whales” or “whale sightings”. |
gwc_busiest_period | text | Start and end of the busiest period, Hawaiʻi time, as the release states it (two periods when it reports a tie). |
gwc_day_total_maui | integer (whale sightings) | Total for the whole day on Maui. From February 2023, each release adds after its total for all islands, of which this is a part, that the number “may represent duplicate sightings of the same whale”. |
gwc_day_total_maui_sites | integer (sites) | Number of Maui sites behind gwc_day_total_maui when the release states it (March 2025 only). |
gwc_day_total_lanai | integer (whale sightings) | Total for the whole day at the Lānaʻi site, 2024 to 2026, when stated. |
note | text | Our note, for example when only one site could report. |
data_status | text | Always “as stated in the joint release”. |
source_document | text | The joint Sanctuary Ocean Count and Great Whale Count press release or community announcement. |
source_publisher | text | Who published the release. |
source_quote | text | The release sentences the row’s figures come from, separated by “ | “. |
source_url | URL | The release (PDF). |
ocean-count-2001-report-values.csv
Every number in the sanctuary’s 2001 report: site tables for Oʻahu, Hawaiʻi Island and Kauaʻi, island figures from its text, the Oʻahu coastline and dolphin tables, and our sums of each scan. The 2001 count was one day (February 24) with four 15-minute scans and gives island totals per scan, so do not compare it with the other files. Where the report disagrees with its tables (Hawaiʻi Island: printed mean 132, tables 123.0), value keeps the print and recomputed gives the tables. One row per number. 520 rows.
| Column | Type | Meaning |
|---|---|---|
date | date (ISO 8601) | Always 2001-02-24, the one count day in 2001. |
island | text | Oʻahu, Hawaiʻi (Hawaiʻi Island) or Kauaʻi. |
level | text | ”island” for a figure for the whole island, “coast” for an Oʻahu coastline in Table 4, “site” for one site in Tables 1 to 3 or Table 5. |
table | text | Where the number is printed: “text” for the report’s prose, or Table 1 (Oʻahu), Table 2 (Hawaiʻi), Table 3 (Kauaʻi), Table 4 (Oʻahu coastlines), Table 5 (dolphins). Table 3 is a scanned image with no text layer; we typed it in from the page image. |
table_row | integer | Row number within Tables 1 to 3, counting from the top. Needed because Table 1 prints Hanauma Bay twice with different numbers. |
row_label | text | The row’s site or coast name exactly as the PDF’s text layer gives it, including its stand-ins for the ʻokina and kahakō (for example Hâlona, Ma′ili). |
site_or_scope | text | Our spelling of row_label: marks the report printed become ʻokina and kahakō; no mark is added that the report did not print. “island” on island rows. These are the report’s 2001 site names, not matched to our site list. |
count_period | text | The 15-minute scan (09:00-09:15, 10:00-10:15, 11:00-11:15 or 12:00-12:15, Hawaiʻi time), “all four scans”, “per scan” (Table 4), “day” (Table 5), or empty for figures with no time. |
measure | text | What the number is. Site rows: whales_counted (whales in one scan), whales_mean_per_count and whales_sd (the table’s “Average Per Site” and “Standard Deviation” over the scans), dolphins_counted. Island rows: whales_count_total (whales at all the island’s sites in one scan), whales_mean_per_count and whales_sd (mean and SD of the four scan totals), sites_designated, sites_staffed, sites_reporting, sites_reporting_scan, sites_no_whales, share_sites_no_whales, share_of_count_two_sites, whales_per_hour, whales_per_site_hour, volunteers_signed_up. Coast rows: coast_sites, coast_min, coast_max. |
value | number | The number as printed, or our sum on a “computed” row. Empty where the report prints a dash (no data) or something that is not a single number (a range such as 1-3, or ?). |
value_as_printed | text | The cell or figure exactly as printed: “-“ for no data; ranges and “?” kept. Empty on computed rows. |
unit | text | Unit of value: whales, sites, percent, volunteers, spinner dolphins, whales per hour, whales per site hour. |
qualifier | text | What the number covers, and the report’s own hedges (“approximately”, “over”). |
reporting_status | text | ”printed”: a number printed in the report. “not_reported”: a dash, the site gave no count. “printed_not_numeric”: printed as a range or “?”. “computed”: our sum from Tables 1 to 3, which print no column totals. |
recomputed | number | Our recomputation of a printed figure from the report’s own tables, where one is possible (method in note). Where it differs from value, the report disagrees with itself; we keep the printed value and do not correct it. Site means and SDs use the scans reported and the sample SD (n – 1). |
note | text | How we recomputed the figure, and where the report disagrees with itself. The per-hour rates, for example, reproduce only if four 15-minute scans count as two hours. |
source_quote | text | The sentence or table row the number comes from, as printed. |
page | integer | Page of the report (the printed page number, which is also the PDF page). |
source_url | URL | The report on NOAA’s sanctuary website (PDF). |
ocean-count-early-history-statements.csv
Dated statements about the count’s first years, 1996 to 2002, from the sanctuary’s reports, handbook, training slides, web pages and advisory council minutes, and NOAA’s 2026 article. One row per statement; statements that disagree are kept side by side. 13 rows.
| Column | Type | Meaning |
|---|---|---|
event_id | text | Our id for the statement (E01, E02, …). |
date_or_year | text | The date or year the statement is about, as precise as the source gives it. |
island | text | Island the statement is about, or “all”. |
statement | text | What the source says, in our words. |
source_short | text | The source: author or office, title, date. |
source_url | URL | The source on NOAA’s site, or the Internet Archive’s copy of the sanctuary’s former site. |
source_quote | text | The source’s own words. Passages joined by “ | “ come from the same source. |
page | integer | PDF page, where the source is a PDF. |
source_date | text | When the source was written or published (for a web page, the archive capture date). |
conflicts_with | text | event_ids of statements that disagree with this one, separated by “;”. The sanctuary’s own documents date the first count to both 1996 and 1997; we keep both. |
note | text | Our note on the source. |
sanctsound-humpback-song-weekly-2018-2021.csv
Weekly share of 30-second recordings with humpback song at four SanctSound recorders, 2018-19 to 2020-21, one row per site per week with any recorded hour. Source: NOAA Office of National Marine Sanctuaries and U.S. Navy (SanctSound, NCEI); song detected by a model developed and provided by Google. The files state: “The data may be used and redistributed for free but are not intended for legal use, since it may contain inaccuracies.” Our weekly table is CC BY 4.0. Never combine it with the Ocean Count figures. 220 rows.
| Column | Type | Meaning |
|---|---|---|
site_id | text | SanctSound site code: HI01, HI03, HI04 or HI06. HI05 is left out (one 19-day span, no place name, two sets of coordinates about 22 km apart). |
deployment_id | text | SanctSound deployment, for example HI04_03. Each deployment is one recorder on the seafloor for one season. |
place_name | text | The site name exactly as the SanctSound metadata writes it (SITE_ALIASES): Olowalu, Makapuu, Kauai or Big_Island. |
site_label | text | Our label for the site, with ʻokina: Olowalu, Maui; Makapuʻu, Oʻahu; Kauaʻi; Hawaiʻi Island. |
season | text | July-to-June year the week starts in: 2019-20 means July 2019 to June 2020. The recorders ran from late November or December to between January and early July. |
week_start_hst | date (ISO 8601) | Monday that starts the week, in Hawaiʻi-Aleutian Standard Time (HST, UTC-10, no daylight saving). The source times are UTC; we shift each hour by 10 hours before grouping. |
week_end_hst | date (ISO 8601) | Sunday that ends the week (HST). |
first_hour_utc | date-time (UTC) | Start of the first recorded hour in the week, as the source gives it. |
last_hour_utc | date-time (UTC) | Start of the last recorded hour in the week. |
hours_recorded | integer | Hours in the week with a value in the source (at most 168). Hours without one were not recorded, or not as good-quality continuous audio, and are left out, never counted as zero. |
partial_week | boolean (true/false) | true when hours_recorded is under 84 (half a week). We do not chart or describe these weeks. |
song_pct | number (0 to 100, one decimal) | Mean of the week’s hourly values times 100. Each hourly value is the source’s share of 30-second recordings in that hour in which the detector found humpback song. The source gives no per-hour denominators, so every recorded hour counts equally. A 0 means no song was detected, not that no whales were there. |
unit | text | Unit of song_pct. |
source_doi | URL | DOI of the deployment’s NCEI record. Cite it as the files ask: NOAA Office of National Marine Sanctuaries and U.S. Navy. 2021. Humpback Whale Sound Production Recorded at SanctSound Site HInn_nn, SanctSound Data Products. NOAA National Centers for Environmental Information. |
source_url | URL | The hourly CSV on NOAA’s public bucket that the week was computed from. |
hawaii-humpback-abundance-estimates.csv
Published abundance estimates for Hawaiʻi humpback whales, not Ocean Count data: the non-calf estimates for each breeding season, 2002/03 to 2022/23, from Table 1 of Barber-Meyer et al. (2026), Marine Mammal Science 42(4): e70231, doi:10.1111/mms.70231, and four figures from NOAA Fisheries’ stock assessment report for the Hawaiʻi stock. The article is open access under CC BY-NC-ND 4.0 (© 2026 Pacific Whale Foundation and the authors). Our file compiles its published numbers, not the article or its figures: credit the paper when you use those rows. 25 rows.
| Column | Type | Meaning |
|---|---|---|
source | text | Which publication the row comes from: “barber-meyer-2026” (Barber-Meyer et al. 2026, Table 1; CC BY-NC-ND 4.0, credit the paper) or “noaa-sar-hawaii-2024ed” (NOAA Fisheries’ stock assessment report for the Hawaiʻi stock, Alaska Marine Mammal Stock Assessments, 2024, NOAA-TM-AFSC-503, posted April 2026; a US government work). The two measure different things: never combine, average or chart them as one series. |
measure | text | What the value is, as the source names it: “non-calf abundance estimate” (barber-meyer-2026), or “abundance estimate”, “minimum population estimate (Nmin)”, “potential biological removal (PBR)” and “current population trend” (the stock assessment). |
period_label | text | The period exactly as the source labels it: a breeding season such as “2014/15”, or a year (“2020”). Empty for the trend row. |
period_start | date (YYYY-MM or YYYY-MM-DD) | Start of the period: November of the first year for a breeding season (the paper uses November to May); for the stock assessment estimate, the start of the peak window the model averages over. |
period_end | date (YYYY-MM or YYYY-MM-DD) | End of the period: May for a breeding season; the end of the peak window for the stock assessment estimate. |
plot_year | integer (year) | Where our chart on the whale decline page plots the row: the year a breeding season ends (2014/15 at 2015). Empty for rows we do not plot: the 2002/03 estimate the authors exclude, and every stock assessment row. |
value | integer | The number as published. Empty for the trend row, which has no number. |
value_text | text | The trend as the stock assessment states it (“unknown”). Empty on numeric rows. |
se | integer | Standard error as printed (barber-meyer-2026). Empty where the source gives none. |
cv | number | Coefficient of variation as printed (the stock assessment estimate). Empty where the source gives none; we do not derive one. |
ci_low | integer | Lower bound of the confidence interval as printed. |
ci_high | integer | Upper bound of the confidence interval as printed. |
ci_level | number | Confidence level of the interval (0.95). |
population_scope | text | Which whales the value covers, as the source defines them. The paper counts non-calves using the Main Hawaiian Islands in a breeding season; the stock assessment covers whales of all ages in the US Exclusive Economic Zone around the Hawaiian Islands at the winter peak. |
unit | text | ”whales”. Empty for the trend row. |
method | text | How the source produced the value, in brief. |
excluded_by_authors | 0 or 1 | 1 for the 2002/03 estimate, which the authors say is “likely underestimated by about half” and leave out of their figure, their 11,617 mean and their growth rates. The row is kept as printed; leave it out of any series. |
note | text | Our note on the row. |
source_document | text | Full citation of the publication. The barber-meyer-2026 citation ends with the article’s license. |
source_url | URL | The paper’s DOI or the stock assessment report (PDF). |
page_or_table | text | Table and page, or section and page, the value comes from. |
source_quote | text | The table row or sentence the value comes from, as printed. |
whale-injuries-hawaii.csv
Whale entanglement and vessel-collision report counts for Hawaiʻi from NOAA reports: a separate dataset, not Ocean Count data. Two families, kept apart: the sanctuary’s season-end entanglement response reports, 2005–06 to 2018–19, 2023–24 and 2024–25, each season with its own window, species and units as printed; and NOAA Fisheries (PIFSC) humpback injury determinations by category for calendar years 2007 to 2021. Both count cases reported to and confirmed by the response networks, a minimum. Source: NOAA (public domain). One row per printed figure or derived count. 555 rows.
| Column | Type | Meaning |
|---|---|---|
source_family | text | ”sanctuary season-end report” (Hawaiian Islands Humpback Whale National Marine Sanctuary, Large Whale Entanglement Response) or “PIFSC injury determinations” (NOAA Fisheries Pacific Islands Fisheries Science Center). The two count partly the same cases: never add them together or compare them as if independent. |
report_id | text | Short name of the report. Sanctuary: HIHWNMS- plus the year the season ended (2006 to 2019, 2025) and the report kind (season-summary, season-web for an archived web page, season-end), and HIHWNMS-2024-SAC-agency-report for 2023–24. PIFSC: NMFS-PIFSC-45, -75, -81, -103, DR-22-018, DR-23-01 or DR-25-10. |
report_title | text | Authors, year, title, series and DOI as printed. |
period_type | text | ”season” (sanctuary) or “calendar year” (PIFSC). Seasons are never converted to calendar years or back. |
period_start | date (ISO 8601) | First day of the period the row covers, from the window as printed. Multi-year PIFSC rows are totals the report prints for that window. Empty where the report states no dates (2023–24). |
period_end | date (ISO 8601) | Last day of the period. |
window_as_stated | text | The season window exactly as the sanctuary source prints it (“December 1, 2024 – May 1, 2025”, “November 1 – April 30”); “not stated” for 2023–24. Windows differ from season to season. Empty for PIFSC rows. |
geography | text | The area as the report describes it: the main Hawaiian Islands (sanctuary; some seasons include cases far offshore, noted per row) or in and around the Hawaiian EEZ (PIFSC). |
location_basis | text | Which location places a case: where the whale was reported or observed, not where the gear came from. |
species_scope | text | Species the value covers, as printed: large whales (all species), humpback whale, sperm whale, sei whale, dolphin, monk seal, a printed mix (“humpback whales and monk seals”), all cetaceans, or “not stated” where the sentence names no species. Sanctuary seasons to 2009–10 count humpbacks only. |
measure | text | What is counted; each measure is defined, with the report’s wording, in DEFINITIONS.md. Reports, animals, response efforts and outcomes are different entities: never add one to another. |
determination_category | text | PIFSC rows: the reports’ injury determination (Serious, Serious* for a determination based on significant health decline, Prorate for a fractional serious injury, Non-serious, Dead, CBD for cannot be determined) or “all” for a total. “not applicable” for sanctuary rows. |
serious_injury_basis | text | Which determination a PIFSC count or sum uses: vessel collisions have one (used for PBR); entanglements have an initial one (LOF, before any disentanglement) and a follow-up one (PBR), so their category counts appear once per basis. |
value | number | The figure. Counts are whole numbers; serious-injury equivalents can be decimals, because prorated cases count as a fraction. 0 means a reported or tabulated zero. |
unit | text | As printed: reports, animals, cases, whales (one per report row; individuals are not de-duplicated), serious-injury equivalents, or the response unit a sanctuary report uses (“on-water response efforts”, “on-water and in-air responses”, “multi-agency, multi-asset responses” and others). Never compare values with different units. |
bound | text | exact, at least, or as many as, as the report words it. |
derived_from_rows | true/false | true: we counted the report’s case rows (PDF tables 2007-2018, supporting data files 2019-2021). false: the figure is printed in the report text, quoted in source_quote. |
source_url | URL | The report PDF on NOAA’s servers (sanctuary site or NOAA Institutional Repository), or the Wayback Machine capture of a sanctuary web page (2006–07, 2009–10). |
source_page | text | Physical PDF page (or page range for case rows). Empty where the rows come from a supporting data file or an archived web page. |
source_table | text | ”report text”, “archived web page text”, the report table, or the supporting data file the case rows come from. |
source_quote | text | The sentence that states a printed figure. Empty for derived rows. |
transcription | text | How we read the figure: copied from the report text or the archived web page, read from the PDF text layer, or read from the supporting CSV or xlsx file. |
report_revision | text | Publication date and any revision or supersession the report states. |
note | text | Caveats for the row, such as the 2007 vessel total that does not reconcile, that outcome rows must not be summed, or that the report prints the same measure twice with a different value or bound (“The report also prints”: both rows are kept). |
License and credit
Volunteers collected the observations, and the Hawaiian Islands Humpback Whale National Marine Sanctuary, a NOAA office, published them. We link to the official results sheets, press releases and reports on oceancount.org and NOAA’s site instead of copying them, so each row’s source_url points to the publisher’s own file, or to the Internet Archive’s copy where the sanctuary’s older page is gone.
USA.gov’s guidance on government works says you cannot use government material in a way that implies endorsement. NOAA and the sanctuary have not reviewed or endorsed this site.
Our compilation, meaning the tidy tables, column names and the flags we derived, is released under Creative Commons Attribution 4.0. You can reuse and adapt it, including commercially, if you credit the sanctuary for the observations and sanctuaryoceancount.org for the compilation. The suggested citation and the limits of the numbers are on our methods page.
The SanctSound file is derived from data products of the NOAA Office of National Marine Sanctuaries and the U.S. Navy, published by NCEI, with song detected by a model developed and provided by Google. The files state: “The data may be used and redistributed for free but are not intended for legal use, since it may contain inaccuracies.” Cite each deployment’s DOI, given on every row, and our weekly table.
The abundance estimates file is credited differently. Its Barber-Meyer et al. (2026) rows are numbers from an article published under Creative Commons Attribution-NonCommercial-NoDerivs 4.0: credit the paper when you use them, and follow that license for anything taken from the article itself. Its stock assessment rows come from a NOAA Fisheries report.