Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
.Net API for the TeaFile File Format. TeaFiles is Time Series Persistence in Flat Files.
branch: master
Failed to load latest commit information.
Examples moved version from codeplex
TeaFiles.Test moved version from codeplex
TeaFiles TeaFileT.Create overload that allows setting stream ownership
Usage moved version from codeplex
.gitignore Initial commit
Coverage.testsettings moved version from codeplex
License.txt license
Normal.testsettings moved version from codeplex Update
TeaFiles.Net.sln moved version from codeplex
normal32.testsettings moved version from codeplex

TeaFiles.Net - Time Series Storage in Files

Use TeaFiles.Net to create, read and write files holding time series data.


  • highest performance
  • very simple
  • versatile - open TeaFiles with C++, C#, Python, R, on any platform

TeaFiles = Binary Data + Header

  • TeaFile is a file format
  • to store time series
  • as binary flat files
  • optional header holds a description of file contents (metadata)
  • including a description of the item type layout (schema)
  • simple format, designed to make API writing very easy
  • published the file format and
  • releases APIs for C#, C++, Python under the GPL


250 Mio Items per seconds cold
465 Mio Items per seconds warm

benchmark results at


  • Get the NuGet package from or


The API class documentation is available online at

TeaTime product family

TeaFiles are the foundation of the TeaTime product family, the toolset for persistence, visualisation and real time analysis of time series.

Related products:

  • TeaShell - Browse Time Series like Photos
  • TeaHouse - Browse Large Time Series by Chart


// define time series item type
struct Tick
    public Time Time;
    public double Price;
    public int Volume;
 // create file and write values
using (var tf = TeaFile<Tick>.Create("acme.tea"))
    tf.Write(new Tick { Price = 5, Time = DateTime.Now, Volume = 700 });
    tf.Write(new Tick { Price = 15, Time = DateTime.Now.AddHours(1), Volume = 1700 });
    // ...
// sum the prices of all items in the file
using (var tf = TeaFile<Tick>.OpenRead("acme.tea"))
    return tf.Items.Sum(item => item.Price);
Something went wrong with that request. Please try again.