Eucalypt records from Australia's herbaria and flora atlases
liveOne row per record of a eucalypt (the genera Eucalyptus, Corymbia and Angophora) from a state, territory or Commonwealth herbarium or flora atlas, as the Atlas of Living Australia holds it. Each row carries the record identifier, the species, the date and year, the state, the coordinates and their uncertainty, whether the record is a specimen or an observation, the collection and catalogue number for a specimen, the provider and the licence the provider chose. The Atlas of Living Australia aggregates records from many sources. This dataset takes only the government providers named below, under open licences, so a row here is an official record.
Also called: gum tree records, Eucalyptus occurrence records, eucalypt specimens, Atlas of Living Australia eucalypts.
- Whose records are these?
- Every row comes from a government herbarium or flora atlas, read through the Atlas of Living Australia, which is the national biodiversity database funded by the Australian Government and hosted by CSIRO. The providers are the state and territory herbaria and atlases, the national herbarium at CSIRO, the Australian National Botanic Gardens and the state botanic gardens. The provider is named in every row. Records from citizen science apps, universities and overseas collections are not included.
- What is a record?
- A specimen held in a herbarium, or an observation logged in a flora atlas, of a plant in the genera Eucalyptus, Corymbia and Angophora, which together are the eucalypts. The basis of record field says which. A specimen row names the collection and its catalogue number.
- Why do some dates look wrong?
- The dates are the providers' own. Some 1,500 rows carry the year 1599 and about one row in fifteen has no year at all, and they are kept as published. The oldest plausible records are from 1770.
- How exact are the coordinates?
- Each row carries the coordinates the provider gave and, where known, the uncertainty in metres. Old specimens are often placed to the nearest ten kilometres. The Atlas also generalises the coordinates of some threatened species at the provider's request.
- What licence applies?
- Only rows the provider released under CC0 or a CC BY licence are included, and the licence is in every row. When you use the data, name the provider in the row as well as the Atlas.

Made for agents
Connect your AI agent
Any agent that connects to publicdata.au/mcp can find this dataset, read its 36 fields and diff its versions. Every answer names the version and carries ALA's attribution. No key.
Then ask it: What does Eucalypt records from Australia's herbaria and flora atlases hold, and what changed in the newest version?
claude mcp add --transport http publicdata https://publicdata.au/mcp One command. No key, no account, no sign-up.
Settings, then Connectors, then Add custom connector, and paste https://publicdata.au/mcp.
On the web and in the desktop app.
https://publicdata.au/mcp Streamable HTTP. Cursor, VS Code or any client that connects to a remote MCP server.
Using https://publicdata.au/llms.txt, how many people died on Queensland roads in 2025, by month? For an assistant that reads the web and has no connector.
Download it as CSV, JSON, GeoJSON and 8 more formats
Pick a format and a version. CSV is picked first because it opens in the tools most offices have. The URL is yours to keep. A dated version never changes.
In your own tools
Use it in Excel, R, Python and more
Excel and Power BI read the CSV from its address and refresh from it. The R and Python packages take any dataset on this site by its slug, so a new dataset needs no new release. The DuckDB file attaches read-only over HTTPS, and a query reads only the blocks it touches.
The dated URL in the code never changes. https://publicdata.au/d/au-eucalypt-records/latest/ redirects to the newest version.
https://publicdata.au/d/au-eucalypt-records/latest/data.csv In Excel choose Data, then From Web, and paste this address. Excel keeps it, so Refresh All reads the newest version. A sheet holds about a million rows; past that, load the query to the Data Model.
https://publicdata.au/d/au-eucalypt-records/latest/data.csv In Power BI Desktop choose Get data, then Web, paste this address and choose Anonymous when asked how to sign in. A scheduled refresh reads the same address, so the report follows each new version.
library(publicdataau)
df <- pd_read("au-eucalypt-records")
pd_attribution(df) install.packages("publicdataau"). pd_read() fetches the version's Parquet file; pd_rows() and pd_aggregate() ask the query API instead, and pd_connect() attaches the DuckDB file.
import publicdata_au as pd_au
df = pd_au.read("au-eucalypt-records")
df.attrs["publicdata"]["attribution"] pip install "publicdata-au[pandas]". read() fetches the version's Parquet file; rows() and aggregate() ask the query API, and connect() attaches the DuckDB file.
INSTALL httpfs; LOAD httpfs;
ATTACH 'https://publicdata.au/d/au-eucalypt-records/v/2026-09-29/data.duckdb' AS au_eucalypt_records (READ_ONLY);
SELECT state_province, count(*) FROM au_eucalypt_records.records GROUP BY 1 ORDER BY 2 DESC; The DuckDB file attaches read-only over HTTPS and only the blocks a query touches are read. Parquet works the same way: FROM read_parquet(url).
What is in it
Column names are made snake_case and the publisher's original header is kept beside each one. Blank cells are null. Nothing is added, removed, ranked or summarised.
| Field | Type | Publisher's header | Note |
|---|---|---|---|
| record_id | string | uuid | The Atlas of Living Australia's identifier for the record. |
| occurrence_id | string | occurrenceID | The provider's own identifier for the record. |
| catalogue_number | string | raw_catalogNumber | The specimen's number in its collection. Blank for an observation. |
| institution_code | string | raw_institutionCode | The herbarium code, such as MEL or PERTH. |
| collection_code | string | raw_collectionCode | |
| scientific_name | string | scientificName | |
| vernacular_name | string | vernacularName | |
| taxon_rank | string | taxonRank | Species, subspecies, genus or variety. |
| species | string | species | |
| event_date | datetime | eventDate | When the plant was collected or observed, as the provider gave it. |
| year | integer | year | |
| month | integer | month | |
| state_province | string | stateProvince | |
| latitude | number | decimalLatitude | |
| longitude | number | decimalLongitude | |
| coordinate_uncertainty_m | number | coordinateUncertaintyInMeters | The provider's stated uncertainty of the coordinates, in metres. |
| basis_of_record | string | basisOfRecord | PRESERVED_SPECIMEN for a herbarium specimen, HUMAN_OBSERVATION or OBSERVATION for a sighting, as the provider states. |
| data_resource_uid | string | dataResourceUid | The Atlas's identifier for the provider. |
| data_resource_name | string | dataResourceName | The herbarium or atlas that holds the record. |
| licence | string | license | The licence the provider chose for the record. |
| type_status | string | typeStatus | Set when the specimen is a type specimen for a name. |
| locality | string | locality | The provider's description of the place. |
| occurrence_status | string | occurrenceStatus | |
| first_loaded | datetime | firstLoadedDate | When the Atlas first loaded the record. |
| sa2_2021_code | string | (spine: sa2) | Code of the Statistical Area Level 2 (2021) the point falls in. Joined by location from abs-sa2-2021, not published by the publisher. |
| sa2_2021_name | string | (spine: sa2) | Name of the Statistical Area Level 2 (2021) the point falls in. Joined by location from abs-sa2-2021, not published by the publisher. |
| lga_2025_code | string | (spine: lga) | Code of the Local Government Area (2025) the point falls in. Joined by location from abs-lga-2025, not published by the publisher. |
| lga_2025_name | string | (spine: lga) | Name of the Local Government Area (2025) the point falls in. Joined by location from abs-lga-2025, not published by the publisher. |
| sal_2021_code | string | (spine: suburb) | Code of the Suburb and Locality (2021) the point falls in. Joined by location from abs-suburbs-localities-2021, not published by the publisher. |
| sal_2021_name | string | (spine: suburb) | Name of the Suburb and Locality (2021) the point falls in. Joined by location from abs-suburbs-localities-2021, not published by the publisher. |
| poa_2021_code | string | (spine: postcode) | Code of the Postal Area (2021) the point falls in. Joined by location from abs-postal-areas-2021, not published by the publisher. |
| poa_2021_name | string | (spine: postcode) | Name of the Postal Area (2021) the point falls in. Joined by location from abs-postal-areas-2021, not published by the publisher. |
| sed_2025_code | string | (spine: state_electorate) | Code of the State Electoral Division (2025) the point falls in. Joined by location from abs-state-electoral-divisions-2025, not published by the publisher. |
| sed_2025_name | string | (spine: state_electorate) | Name of the State Electoral Division (2025) the point falls in. Joined by location from abs-state-electoral-divisions-2025, not published by the publisher. |
| ced_2025_code | string | (spine: federal_electorate) | Code of the Commonwealth Electoral Division (2025) the point falls in. Joined by location from abs-federal-electoral-divisions-2025, not published by the publisher. |
| ced_2025_name | string | (spine: federal_electorate) | Name of the Commonwealth Electoral Division (2025) the point falls in. Joined by location from abs-federal-electoral-divisions-2025, not published by the publisher. |
Download this table as a data dictionary (Excel), or read it as a Frictionless Table Schema at schema.json. The key is record_id.
A sample of 10 rows
From the latest version, newest first by year, each state in turn, then in the publisher's order, with every field. A blank cell is shown as null.
| record_id | occurrence_id | catalogue_number | institution_code | collection_code | scientific_name | vernacular_name | taxon_rank | species | event_date | year | month | state_province | latitude | longitude | coordinate_uncertainty_m | basis_of_record | data_resource_uid | data_resource_name | licence | type_status | locality | occurrence_status | first_loaded | sa2_2021_code | sa2_2021_name | lga_2025_code | lga_2025_name | sal_2021_code | sal_2021_name | poa_2021_code | poa_2021_name | sed_2025_code | sed_2025_name | ced_2025_code | ced_2025_name |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0001a9b3-cd48-4db8-b50b-389bfbfb2d37 | urn:catalog:NSW Dept of Planning, Industry and Environment:BioNet Atlas of NSW Wildlife:SMKVI0545155 | SMKVI0545155 | NSW Dept of Planning, Industry and Environment | BioNet Atlas of NSW Wildlife | Eucalyptus coolabah | Coolibah | species | Eucalyptus coolabah | 2026-07-15T00:00:00 | 2026 | 7 | New South Wales | -29.436373 | 146.60855 | 20 | HUMAN_OBSERVATION | dr368 | NSW BioNet Atlas | CC-BY 4.0 (Int) | null | Bora Whyman Rd, Collerina NSW 2839 | PRESENT | 2026-09-29T11:35:32 | 105011092 | Bourke - Brewarrina | 11200 | Brewarrina | 10974 | Collerina | 2839 | 2839 | 10007 | Barwon | 133 | Parkes |
| 031408f8-fcb7-49de-b108-848e02a6aed9 | null | OPP1364784-4 | null | null | Eucalyptus leptophylla | Narrow-leaf Red Mallee | species | Eucalyptus leptophylla | 2026-04-29T00:00:00 | 2026 | 4 | South Australia | -33.11362 | 136.86047 | 100 | HUMAN_OBSERVATION | dr366 | SA Flora | CC-BY 4.0 (Int) | null | null | PRESENT | 2026-09-01T01:13:51 | 406021140 | Quorn - Lake Gilles | 49399 | Unincorporated SA | 40334 | Cultana | 5611 | 5611 | 40018 | Giles | 404 | Grey |
| 19056dd3-c880-4010-9e01-0681f9d6ffec | 187067876 | 14377580 | null | null | Eucalyptus obliqua | Messmate Stringybark | species | Eucalyptus obliqua | 2026-02-25T00:00:00 | 2026 | 2 | Victoria | -38.46782 | 144.0461 | 5 | HUMAN_OBSERVATION | dr1097 | Victorian Biodiversity Atlas | CC-BY 4.0 (Int) | null | V_PB Otways bioregion | PRESENT | 2026-08-06T06:29:10 | 203031049 | Lorne - Anglesea | 26490 | Surf Coast | 20834 | Eastern View | 3231 | 3231 | 26808 | Polwarth (Western Victoria) | 237 | Wannon |
| 280bc2de-7f35-4241-96fc-3e337c5e1016 | null | 5992066 | null | null | Corymbia polycarpa | Long-fruited Bloodwood | species | Corymbia polycarpa | 2026-03-18T00:00:00 | 2026 | 3 | Northern Territory | -12.64803 | 131.202907 | 20 | HUMAN_OBSERVATION | dr362 | Flora Atlas N.T. | CC-BY 3.0 (Au) | null | Open nervosa and polycarpa woodland, small tree and pandanus mid, tussock grass and sedge ground. Plot corners (GDA94):… | PRESENT | 2026-05-13T05:21:45 | 701031035 | Weddell | 72300 | Litchfield | 70278 | Wak Wak | 0822 | 0822 | 70013 | Goyder | 701 | Lingiari |
| 3cadc26a-cb7a-4a51-b411-5a62c4bc2a84 | urn:catalog:BRI:Herbrecs:1062179 | BRI AQ1062179 | BRI | Herbrecs | Eucalyptus raveretiana | Black Ironbox | species | Eucalyptus raveretiana | 2026-01-21T00:00:00 | 2026 | 1 | Queensland | -21.862627 | 148.5735 | 50 | PRESERVED_SPECIMEN | dr2287 | BRI AVH Data and Images | CC-BY 4.0 (Int) | null | Peak Downs Highway, Strathfield, 27km S of Nebo. | PRESENT | 2026-07-09T05:28:43 | 312011338 | Broadsound - Nebo | 33980 | Isaac | 32678 | Strathfield (Qld) | 4742 | 4742 | 30011 | Burdekin | 305 | Capricornia |
| 0786a6da-1117-4fa2-8fbd-62dc9ecbf6b0 | 20250124-1-occ | 20250124 | WASC | null | Eucalyptus ceratocorys | Horn-capped Mallee | species | Eucalyptus ceratocorys | 2025-04-08T00:00:00 | 2025 | 4 | Western Australia | -31.958333 | 115.833333 | null | OCCURRENCE | dr21991 | The Western Australian Seed Centre (Kings Park) | CC-BY 3.0 (Au) | null | null | PRESENT | 2025-12-11T05:24:15 | 503021037 | Kings Park (WA) | 57080 | Perth | 50762 | Kings Park (WA) | 6005 | 6005 | 50044 | Perth | 514 | Perth |
| 15f3eb84-853b-4d94-bd76-9934772f7234 | 20250156-1-trial-occ | 20250156 | WASC | null | Eucalyptus bigalerita | Poplar Gum | species | Eucalyptus bigalerita | null | 2025 | 4 | null | null | null | null | OCCURRENCE | dr21991 | The Western Australian Seed Centre (Kings Park) | CC-BY 3.0 (Au) | null | null | PRESENT | 2025-12-11T05:24:15 | null | null | null | null | null | null | null | null | null | null | null | null |
| 212f3f72-6fdc-4dbf-9eb9-cf00ca1e381d | CANB:DC:1469183 | CANB 1014924.1 | CANB | CANB | Eucalyptus melliodora | Yellow Box | species | Eucalyptus melliodora | 2025-11-16T00:00:00 | 2025 | 11 | Australian Capital Territory | null | null | null | PRESERVED_SPECIMEN | dr15860 | Centre for Australian National Biodiversity Research (CANB) AVH data | CC-BY 4.0 (Int) | null | CULTIVATED: Australian National Botanic Gardens, Canberra; section 170. | PRESENT | 2026-06-15T10:22:51 | null | null | null | null | null | null | null | null | null | null | null | null |
| 5a223f2a-011e-4fd4-987e-9a5339106ea5 | null | HO625379 | HO | HO | Eucalyptus cladocalyx | Sugar Gum | species | Eucalyptus cladocalyx | 2025-11-06T00:00:00 | 2025 | 11 | Tasmania | -42.858389 | 147.324972 | 50 | PRESERVED_SPECIMEN | dr10574 | Tasmanian Herbarium (HO) AVH data | CC-BY 4.0 (Int) | null | Hobart, Queens Domain, bushland strip between Domain Highway and intercity cycleway adjacent to end of Royal Tasmanian… | PRESENT | 2026-08-11T03:14:05 | 601051027 | Hobart | 62810 | Hobart | 60530 | Queens Domain | 7000 | 7000 | 60303 | Clark (Hobart) | 603 | Clark |
| 3ddb00a5-b2c4-4310-9247-7c49e8bddd94 | DNA:DNA:DNA D0134682 | DNA D0134682 | DNA | DNA | Eucalyptus tetrodonta | Darwin Stringybark | species | Eucalyptus tetrodonta | 1998-06-01T00:00:00 | 1998 | 6 | The Northern Territory | null | null | null | PRESERVED_SPECIMEN | dr15866 | Northern Territory Herbarium (DNA) AVH data | CC-BY 4.0 (Int) | null | Parks & Wildife / C.SI.R.O. Compound Berrimah | PRESENT | 2021-06-26T06:11:41 | null | null | null | null | null | null | null | null | null | null | null | null |
The first row as JSON
As it appears in data.json.
GET https://publicdata.au/d/au-eucalypt-records/latest/data.json
{
"record_id": "00000b24-8c83-4839-aa87-3abf897b7ca1",
"occurrence_id": null,
"catalogue_number": "RVPO95337-430444",
"institution_code": null,
"collection_code": null,
"scientific_name": "Eucalyptus fasciculosa",
"vernacular_name": "Pink Gum",
"taxon_rank": "species",
"species": "Eucalyptus fasciculosa",
"event_date": "2012-05-10T00:00:00",
"year": 2012,
"month": 5,
"state_province": "South Australia",
"latitude": -36.849875,
"longitude": 140.489695,
"coordinate_uncertainty_m": 500.0,
"basis_of_record": "HUMAN_OBSERVATION",
"data_resource_uid": "dr366",
"data_resource_name": "SA Flora",
"licence": "CC-BY 4.0 (Int)",
"type_status": null,
"locality": null,
"occurrence_status": "PRESENT",
"first_loaded": "2021-06-26T05:38:21",
"sa2_2021_code": "407021155",
"sa2_2021_name": "Naracoorte Surrounds",
"lga_2025_code": "45090",
"lga_2025_name": "Naracoorte Lucindale",
"sal_2021_code": "40772",
"sal_2021_name": "Lochaber",
"poa_2021_code": "5271",
"poa_2021_name": "5271",
"sed_2025_code": "40028",
"sed_2025_name": "MacKillop",
"ced_2025_code": "402",
"ced_2025_name": "Barker"
}
Smaller files
The same rows split by a field, one JSON file each with a GeoJSON beside it. Each file carries the same provenance header.
By state_province (11 files)
by/state_province/index.json lists every file with its row count.
What changed
One version for every release the publisher has made since this site started following the dataset. The date is the day the file changed on the portal.
- 2026-09-29 1,445,447 rows+864 added −0 removed 60 changed36 fieldsutf-8a14b1464632eThe rows are the Atlas's records from the named government providers under CC0 and CC BY licences, read from its search API. The provider and the licence are in every row.
- 2026-09-24 1,444,583 rows36 fieldsutf-82541f6f91da9The rows are the Atlas's records from the named government providers under CC0 and CC BY licences, read from its search API. The provider and the licence are in every row.
versions.json · changes.json · history.tar.zst (255 MB, every version's Parquet and manifest)
Questions
How do I download Eucalypt records from Australia's herbaria and flora atlases as a CSV file?
Open https://publicdata.au/d/au-eucalypt-records/latest/data.csv. It redirects to the newest dated version, which is https://publicdata.au/d/au-eucalypt-records/v/2026-09-29/data.csv today. The same path serves JSON, GeoJSON, Parquet, SQLite, DuckDB, GeoPackage, GeoParquet, NDJSON, Arrow. A dated URL never changes, so use it when the file must stay the same.
Can I open Eucalypt records from Australia's herbaria and flora atlases in Excel?
Not as a workbook. Excel stops at 1,048,576 rows and this table has 1,445,447, so there is no data.xlsx. Load the CSV or the Parquet file with Power Query, or take one partition file at a time. https://publicdata.au/d/au-eucalypt-records/v/2026-09-29/data.csv.gz is the CSV at about a tenth of the size.
What years does Eucalypt records from Australia's herbaria and flora atlases cover?
The current version covers 1770 to 2025. Each release from ALA becomes a new dated version here, and earlier versions stay online.
How often is Eucalypt records from Australia's herbaria and flora atlases updated?
ALA releases it monthly. This site checks the portal every week and adds a dated version when the file changes.
Can I use Eucalypt records from Australia's herbaria and flora atlases commercially?
Yes. CC BY 4.0 allows commercial use, redistribution and derived works as long as the attribution is kept. The attribution string is in this page's side column and inside every file.
Is this the official source for Eucalypt records from Australia's herbaria and flora atlases?
No. The publisher is Atlas of Living Australia, and its page is https://www.ala.org.au/terms-of-use/. This site republishes the publisher's file without changing its content. The original sits beside every version as source.csv with its SHA-256, so the two can be compared.
How do I get only the rows for one state province?
Every version has one JSON file per value of state_province, 11 files in the current version, listed with row counts at https://publicdata.au/d/au-eucalypt-records/v/2026-09-29/by/state_province/index.json. For example https://publicdata.au/d/au-eucalypt-records/v/2026-09-29/by/state_province/new-south-wales.json holds the 658,883 rows where state_province is New South Wales. A GeoJSON file sits beside each one.
What coordinate system does Eucalypt records from Australia's herbaria and flora atlases use?
Latitude and longitude in WGS84 (EPSG:4326), as the Atlas processes every provider's coordinates. The GeoJSON file uses the same coordinates, which is what GeoJSON expects.
Which SA2, council area, suburb, postcode, state electorate and federal electorate is each row of Eucalypt records from Australia's herbaria and flora atlases in?
Each row with coordinates carries the SA2 (2021), Council area (LGA 2025), Suburb or locality (2021), Postcode (postal area 2021), State electorate (2025) and Federal electorate (2025) its point falls in, with the code of each. This site joins them by location against the ABS boundaries, https://publicdata.au/d/abs-sa2-2021/, https://publicdata.au/d/abs-lga-2025/, https://publicdata.au/d/abs-suburbs-localities-2021/, https://publicdata.au/d/abs-postal-areas-2021/, https://publicdata.au/d/abs-state-electoral-divisions-2025/, https://publicdata.au/d/abs-federal-electoral-divisions-2025/, and ALA did not publish them. The schema marks each one as joined and names the boundary version. A row without coordinates, or a point outside every area, has them blank. Place columns from Australian Statistical Geography Standard (ASGS) Edition 3 boundaries, Australian Bureau of Statistics, licensed under CC BY 4.0.
What this site did to the data. Cells were typed, headers were renamed and the encoding was made UTF-8. Rows were left alone. The publisher's file sits beside every version as source.csv so the change can be checked.