# 2024: Tables.jl vs TableTraits.jl/IterableTables.jl?

**URL:** <https://discourse.julialang.org/t/2024-tables-jl-vs-tabletraits-jl-iterabletables-jl/110524>\
**Category:** General Usage\
**Tags:** question\
**Created:** [February 21, 2024, 4:01pm UTC](https://discourse.julialang.org/t/2024-tables-jl-vs-tabletraits-jl-iterabletables-jl/110524 "2024-02-21T16:01:09Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![schlichtanders](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/schlichtanders/32/32145_2.png) [@schlichtanders](https://discourse.julialang.org/u/schlichtanders)\
**Post date:** [February 21, 2024, 4:01pm UTC](https://discourse.julialang.org/t/2024-tables-jl-vs-tabletraits-jl-iterabletables-jl/110524/1 "2024-02-21T16:01:09Z")

</div>

It is 6 years after Tables.jl appeared and when I am searching for this vs TableTraits.jl / IterableTables.jl I still get pointed to [this old thread](https://discourse.julialang.org/t/tables-jl-vs-tabletraits-jl-was-textparse-jl-is-fast-again/16982).

It seems that the queryverse never switched to Tables.jl, hence this 6 years old thread appears unresolved. Can someone give an update about the state of the Julia ecosystem in this regard?

---

<div class="post-metadata">

**Author:** ![pdeffebach](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pdeffebach/32/10320_2.png) [@pdeffebach](https://discourse.julialang.org/u/pdeffebach)\
**Post date:** [February 21, 2024, 4:31pm UTC](https://discourse.julialang.org/t/2024-tables-jl-vs-tabletraits-jl-iterabletables-jl/110524/2 "2024-02-21T16:31:51Z")

</div>

If you have a type you want other packages to treat as tabular, use Tables.jl. AlgebraOfGraphics.jl, DataFrames.jl, StructArrays.jl etc. all rely on the Tables.jl API. I don’t think any of them consider TableTraits.jl or IterableTables.jl.

Importantly, Tables.jl defines fallbacks for the TableTraits.jl API. So you get both if you implement Tables.jl.
