As we try to predict what will happen under increasing anthropogenic climate change, climate models can only get us so far. Another key is understanding past changes in the Earth’s climate. To do this, palaeoclimatologists turn to natural archives (e.g., sediment cores and speleothems) and extract records of past variability using their properties, such as chemical or physical composition. However, these reconstructions are only as accurate as their chronologies.
While radiometric dating is the most common technique, some archives can record seasonal-scale climate change. For example, counting tree rings to work out how old a tree is. This method can yield an extremely high-resolution age model, providing both low chronological uncertainty and highly detailed climate records.
The process of counting these annual cycles is therefore critical to the record’s accuracy and as a result it is often done manually. Cycle shapes can vary and so may the noise level, so researchers count by eye, marking each boundary in turn, which can take days to weeks. However, because of the inherent ambiguity, cycle counting can also become subjective as two experts may find different boundaries. To mitigate this, studies typically perform multiple counts meaning the whole process becomes more time-consuming.
In our recent paper, we present a new tool (CYCLIM) that speeds up counting. It takes the benefits of automated counts and combines it with the power of manual counting, whilst also quantifying uncertainties. CYCLIM is freely available and runs using a simple point-and-click style interface, so no coding is needed.
An Overview of CYCLIM’s Functionality
CYCLIM is designed to combine the best of both worlds: the speed of automation and the judgement of a trained researcher.

Figure 2: Example frame of the CYCLIM interface. This is the step where the user can inspect and refine the automatic boundaries manually.
The tool works in three steps:
- Automatic detection
CYCLIM uses a pattern-matching approach to detect cycles automatically. This first-pass count is fast, accurate, and gives users a starting point. - Interactive refinement
The automatic detections are then shown within the app for manual quality control. During this stage users can adjust boundaries, remove false detections, or insert missing ones. Rather than defining every boundary, researchers only need to correct a small number of them. - Uncertainty estimation
Finally, there is the option to compute algorithmic uncertainty to estimate the age model uncertainty. Using a Monte Carlo method, it simulates how noise could be affecting detection and gives the user information as to the size and direction of age uncertainty.

Figure 3: Example of the automated CYCLIM output (i.e., no refinement applied) using the proxy record (Kuhnert et al. 1999) shown above.
We tested CYCLIM on three different published climate records and it correctly identified 96% of the cycles, making counting much faster. The app is designed to be user-friendly, with a clear interface and easily extractable results. It requires no coding and only needs you to have a few Python packages downloaded. CYCLIM is freely available alongside an example at: https://doi.org/10.5281/zenodo.17479069.
To dive deeper into the research, you can read the full open-access article here.
This post has been edited by the editorial board.
References Forman, E. C. G. and Baldini, J. U. L.: CYCLIM: a semi-automated cycle counting tool for generating age models and palaeoclimate reconstructions, Clim. Past, 21, 2485–2500, https://doi.org/10.5194/cp-21-2485-2025, 2025. Kuhnert, H., Pätzold, J., Hatcher, B. et al. A 200-year coral stable oxygen isotope record from a high-latitude reef off Western Australia. Coral Reefs 18, 1–12 (1999). https://doi.org/10.1007/s003380050147
