Skip to main content

Tidal Cycles


Tidal Cycles (or just Tidal for short) is software for making patterns with code, whether live coding music at algoraves or composing in the studio. It includes a simple and flexible notation for rhythmic sequences, and an extensive library of patterning functions for combining and transforming them. This allows you to quickly create complex patterns from simple ingredients.

By default, sound is made with the featureful SuperDirt synth/sampler, but you can control other synths using Open Sound Control (OSC) or MIDI. Whether you're using SuperDirt or a synth, every filter and effect can be manipulated independently with Tidal patterns. Tidal is embedded in the Haskell language, although you don't have to learn Haskell to learn Tidal.

You can learn Tidal through experimentation and play - most Tidal coders have little or no experience in software engineering.

Contributing Coffee#

coffee If you enjoy Tidal Cycles, please consider helping speed up development by contributing coffees to Alex! He's put years into making Tidal, and one-off or regular coffees help speed up both its development and documentation.


Tidal Cycles and SuperDirt have been developed with contributions from a wide range of people - Tidal contributors / SuperDirt contributors. Tidal Cycles was initiated by Alex McLean around 2009 during doctoral work funded by EPSRC. Alex's ongoing work on Tidal is partly supported by Ko-Fi contributors and the PENELOPE project (under the Horizon 2020 research and innovation programme of the European Union, grant agreement No 682711).

TidalCycles has been heavily inspired by the work of many others including Bernard Bel, Laurie Spiegel and Adrian Ward.

Last updated on by Alex McLean