Lib.rs › Stats

Rust crates ecosystem statistics.

Growth of the crates.io registry

Download history of all crates since 2015 23M 45M 68M 91M 114M 136M 2015 2016 2017 2018 2019 2020 2021 2022 2023

Daily downloads since Rust 1.0, 7-day average

Crate downloads are growing at a rate of 2.1× per year.

crates.io has served 171.6 million downloads in a single day, which is more than all downloads in the first 26 months since the release of Rust 1.0 in May 2015.

Traffic during weekdays is typically 2.9× higher than during weekends (up from 2.7× a year before).

39024 crate owners registered on crates.io 6K 12K 18K 24K 30K 36K 2015 2016 2017 2018 2019 2020 2021 2022 2023

Number of users/teams owning a crate on crates.io

There are 39,024 users or teams that have a crate on crates.io. The number of owners is growing at a rate of 1.3× per year.

Lib.rs has indexed 151804 crates.

Dependencies

Number of direct dependencies

Number of libraries explicitly used by each crate. Includes dev, build-time and optional dependencies.

0 1 2 3 4 5 6 7 8 9
27331
13803
13972
14515
11816
9457
7662
6653
5824
4905
10 11 ≥12 ≥14 ≥16 ≥18 ≥20 ≥25 ≥30 ≥40 ≥60 ≥80 ≥100 ≥120 ≥150
3916
3629
5369
3893
2978
2173
3128
1699
1542
748
134
34
20
1
7
greader_api eva-rjrpc square-rust ignors libimagentrytimetrack spinal rrpack-prime pyimports dntk gringron_pool subwasmlib polkadot-node-core-chain-selection jup-ag-nova ewin datafusion-expr ha-ndarray depploy nakamoto-client dynamodb-book-ch21-github evtx2bodyfile audio-conv serv surgefx-dualdelay luks2 fmi-sim libquassel galoy-cli qdk_sim_experimental ibkr_client_portal xc3_lib twilight-gateway simple_serde ic_siws candle-core-temp sentry-contrib-native morf-mqtt-bridge possum-db zinoma bard payjoin-cli rvimage morsels_indexer tet-libp2p asimov urdf-viz tet-core reductstore tower-async-http quaint-forked summa agave-validator inexor-rgf-rt sqlx-core-guts shotover rattler-build cachepot lurk miraland-core ockam_api subshell nu-command mindustry-mod-v7 westend-runtime homestar-runtime deno coreutils homestar-workspace-hack apollo-router zero4rs uhg-custom-appollo-roouter forest-filecoin

Number of transitive reverse dependencies (popularity)

How often each library crate is used as a dependency in other crates, directly or indirectly. Includes dev, build-time, and optional dependencies.

1 2 ≥5 ≥15 ≥50 ≥100 ≥300 ≥1000 ≥2500 ≥5000 ≥10000 ≥20000 ≥50000
20169
15063
8832
4628
1554
1405
868
418
172
109
79
90
25
retroqwest-derive keytar-sys okane-core caffe2op-transpose krust_gl clock-bound-shm tree-sitter-haskell wasm4fun-sound ezno-parser m2-ctrl kml eth_checksum etwin_scraper_tools gosh-model fluence-fork-libp2p-swarm monero risc0-zkvm cyfs-base rp-pico cumulus-primitives-aura femme pallet-xcm guppy gstreamer-app fltk strfmt lopdf nu-protocol deflate piston-shaders_graphics2d walrus blstrs sc-chain-spec ccm amq-protocol duct solana-udp-client pnet_base by_address tabled libp2p objc2-ui-kit objc2-cloud-kit anchor-derive-space twoway send_wrapper core2 rgb lexical-core bevy_hierarchy actix-router gobject-sys outref rcgen sqlx kv-log-macro cmake lru slotmap fallible-iterator sha-1 number_prefix language-tags hyper-rustls libsecp256k1 kernel32-sys fixedbitset tinytemplate plotters sct openssl-probe iovec rand_pcg criterion fuchsia-cprng tokio-macros num-conv spin env_logger powerfmt pin-project-internal clap_derive unicode-xid deranged libredox futures mio digest httparse core-foundation-sys socket2 generic-array winapi-util heck anyhow libc autocfg windows_i686_msvc windows_i686_gnullvm log proc-macro2 itoa windows_x86_64_gnu unicode-ident serde_derive

Development

How long a crate has been in development

Time between its oldest and newest release.

one-off ≤1 week ≤1 month ≤6 months ≤1 year ≤2 years ≤3 years ≤5 years ≤7 years ≤10 years
44321
27747
9172
17912
11771
13780
7944
8392
2814
1356
vplugin-package google-service-account-oauth-jwt-assertion-cli video_ludo xmc4500-hal augment launchthing graphy_module libgmtr strtoint phantom_newtype err-ctx caffe2-serverquantize chime bevy_schedules_ext revolver moscato cause apple-clis arthas ibkr_client_portal rsolr spigot twitter_privacy adequate saros webweg alloy-sol-macro rmesh librashader-runtime-d3d12 cl-traits-derive q_compress minutiae benimator bolero-kani aws-sdk-m2 embassy-futures tor-cell tsunami embedded-display-controller decnumber-sys packed_simd levenshtein loaded_dice ndless cue-sys quoted_printable chrono-humanize data-encoding-bin serde_qs exempi-sys

Time without any updates

Time since crate's most recent release. Keep in mind that some crates can be "done" and not need regular updates.

≤1 month ≤3 months ≤6 months ≤1 year ≤2 years ≤3 years ≤4 years ≤5 years ≤7 years ≤10 years
15385
11184
14220
17857
28206
17917
14568
10368
10642
4862
mtracker url2audio xc3_lib cdumay_result pallet-assets-freezer flagrant-client repvar nr noodles-refget resolver_api_derive celsium cw20-base quickfix-msg-gen zusi-fahrpult biome_string_case hcop pyimports keithley-2230-series anydate dynamodb-book-ch21-github mmtickets-common constant_time_eq config-secret salph restbl otter-nodejs-tests qdk_sim_experimental simple-view convert-enum depploy rdftk_names witty-phrase-generator rs-docker epir aiid_js sn0int-signal ploteria regularize-filename cfn-custom-resource pfly_rust ethereumvm-network-foundation loopybayesnet quickjs-sys tracing-derive fts_gamemath litelocale rust-dwm-status roadrunner nsq qt_generator

Age

Time since crate's first release.

≤1 month ≤3 months ≤6 months ≤1 year ≤2 years ≤3 years ≤4 years ≤5 years ≤7 years ≤10 years
3831
5106
9175
15757
30175
21890
19195
14447
16129
9504
kmeans_smid egraphics-core blake2_ce openrank-block-builder cisness ismp-parachain-runtime-api virtio-spec cyclonedx-bom-macros docxsidepdf fyrox-graph pacmanager casper-contract-schema car-mirror-axum spq-as rsjsonnet-front goap-ai pyimports everything-sdk tyrosine-common stostatus dao-voting-native-staked ninja-files-coreutils gen-api-wrapper steel-repl chatgpt-functions mktree efm32lg995-pac cpiotools pasta_rusta google-chat-types aws-gamelift-server-sdk-rs epir benimator qdk_sim_experimental rate_limiter sentry-contrib-native samesame ruler stcloud cfn-custom-resource tracing-async errer ccl_stable_deref_trait tmdb_client overloadable interleaved-ordered fast fujisaki_ringsig unic-ucd-age mxruntime

Number of releases per crate

Number of unique versions of each crate, excluding yanked versions.

1 2 ≥4 ≥8 ≥16 ≥32 ≥50 ≥100 ≥500
46890
35796
28292
18264
9782
3159
2306
674
46
augment google-service-account-oauth-jwt-assertion-cli vplugin-package xmc4500-hal video_ludo nu_plugin_tracer aws-gamelift-server-sdk-rs libgmtr launchthing patica scottish_names mktree gnostr-get-relays zusi-fahrpult chipmunk-sys xdr-rs-serialize-derive holder chromiumoxide_pdl gbnf valkyrie-qualifier sim-rust angreal bhop mavspec rusty_ulid tracing-awc rusty-leveldb holochain_trace reddit-search challenge_response deno_config aws-sdk-vpclattice caisin wasmtime-wit-bindgen libp2p-tcp wat piston2d-opengl_graphics re_log_encoding dua-cli wasmtime-cli swc_ecma_codegen rustc-ap-rustc_errors rustc-ap-arena spider indy

Number of crates per user

How many crates a single account (user or team) owns. Excluding all other people in the world who have 0 crates.

1 2 3 ≥6 ≥25 ≥50 ≥75 ≥100 ≥150 ≥200 ≥1000
18644
6720
6938
5322
660
129
69
46
17
21
1
auser fd canadaduane kouky dgoodlad Mange raggi paulstansifer deontologician marcoow stefanoc joshuaclayton ebassi patrickt tuffy xenoterracide thijsc madninja jedbrown daaku ahl reu hysonglet jjl thanethomson JeremyRubin archer884 legoktm Protryon vercel ihciah ubnt-intrepid franziskuskiefer tyleo esp-rs arcnmx jeremyBanks kuviman fluencebot andygrove rerunio bbqsrc tauri-bot casey rivy matklad aspect matthiasbeyer PistonDevelopers gengteng folex gridbugs newpavlov Traverse-Research-CI-runner btwiuse mingyang91 al8n sunfishcode howardwu a-kenji-buildbot sdroege Azure seam345 dtolnay RustCrypto kennykerr vkill kdy1

Sizes

Crate size (KB)

Amount of data downloaded as a compressed tarball. Size of code + bundled data files. Individual crate pages show size of uncompressed code.

≤1KB ≤10KB ≤50KB ≤100KB ≤500KB ≤1MB ≤5MB ≤10MB ≤42MB
18874
52541
44451
6985
7668
1897
2957
606
31
x-wing wasmtime-async xmc4500-hal err-ctx augment kaspa-alloc ethereumvm-network-foundation rcg cyclonedx-bom-macros mc-sgx-urts-sys gruphst packing_codegen constant_time_eq hyperlocal-with-windows gbnf lightning-invoice shortlang ssh-rs pinot bp-wallet atsamv70j20b ya-relay-client solana-rpc rusty-leveldb snitch-protos mpileup tree-sitter-ruby gaviota-sys zfp-sys rplexfmtr librobotcontrol-sys bayespam luajit-src mcup guessing_game_1732891 soloud-sys fasttext seismicdb series-troxide detexify mupdf-sys efm32wg-pac v8 efm32gg-pac ffmpeg4-sys

Crate total bandwidth (GB)

Amount of data downloaded as a compressed tarball × number of downloads per month.

≥1MB ≥10MB ≥100MB ≥1GB ≥10GB ≥100GB ≥1TB ≥5TB ≥10TB
48194
25022
10869
4396
1383
401
56
17
6
phantom_newtype exdsdevs lunesweb url2audio fil_actor_verifreg cyborgtime mtracker cargo-bloat get-blessed cargo-run-wasm video_ludo rbx_xml ostree-ext fetch-catnip druid punkt leaky-bucket egaku2d libdav1d-sys parquet2 vegafusion-runtime bech32 stm32f3 shell-words bottom deranged rocksdb gix rustls-pki-types static_assertions paperclip bincode diesel snmalloc-sys unicode-width vcpkg clap rustls-webpki aws-sdk-s3 bzip2-sys h2 tracing-subscriber windows_i686_gnu windows_i686_msvc libz-sys regex-automata winapi encoding_rs windows_x86_64_msvc librocksdb-sys tokio libsqlite3-sys image windows linux-raw-sys libc ring windows-sys

Categories

Number of crates in each category. Area is proportional to the number of crates weighed by their ranking (reduces spam). Colors are only for decoration.

Procedural macros (6283) Procedural macros (6283)Proc macros 6283 Rust patterns (4850) Rust patterns (4850)Rust patterns 4850 Concurrency (1737) Concurrency (1737)Concurrency 1737 Web programming (6520) Web programming (6520)Web programming 6520 WebAssembly (2358) WebAssembly (2358)WebAssembly 2358 HTTP server (2076) HTTP server (2076)HTTP server 2076 HTTP client (758) HTTP client (758)HTTP HTTP client (758)client 758 WebSocket (459) WebSocket (459)WebSocket 459 Magic Beans (10610) Magic Beans (10610)Crypto Magic Beans 10610 Network programming (8395) Network programming (8395)Network programming 8395 Asynchronous (3226) Asynchronous (3226)Async 3226 Development tools (3729) Development tools (3729)Development tools 3729 Testing (1226) Testing (1226)Testing 1226 Debugging (1182) Debugging (1182)Debugging 1182 Cargo plugins (1040) Cargo plugins (1040)Cargo Cargo plugins (1040)plugins 1040 Build Utils (993) Build Utils (993)Build Build Utils (993)Utils 993 Profiling (537) Profiling (537)Profiling FFI (444) FFI (444)FFI Command line utilities (6899) Command line utilities (6899)Command line utilities 6899 Command-line interface (1426) Command-line interface (1426)Command-line interface 1426 Embedded development (3421) Embedded development (3421)Embedded Embedded development (3421)development 3421 Hardware support (3059) Hardware support (3059)Hardware Hardware support (3059)support 3059 No standard library (578) No standard library (578)No standard No standard library (578)library Math (2708) Math (2708)Math 2708 Machine learning (1474) Machine learning (1474)Machine learning 1474 Science (1511) Science (1511)Science 1511 Biology (402) Biology (402)Biology 402 Geospatial (351) Geospatial (351)Geo Robotics (283) Robotics (283)Robots Database interfaces (4399) Database interfaces (4399)Database interfaces 4399 Database implementations (534) Database implementations (534)Database Parser implementations (4632) Parser implementations (4632)Parser implementations 4632 Parser tooling (447) Parser tooling (447)Parser tooling Text processing (2873) Text processing (2873)Text processing 2873 Template engine (881) Template engine (881)Template Template engine (881)engine 881 Text editors (664) Text editors (664)Editors 664 Value formatting (486) Value formatting (486)Value formatting 486 Game dev (3484) Game dev (3484)Game dev 3484 Games (1317) Games (1317)Games 1317 Audio (1607) Audio (1607)Audio 1607 Images (1350) Images (1350)Images 1350 Video (653) Video (653)Video Multimedia (541) Multimedia (541)Multimedia Cryptography (3864) Cryptography (3864)Cryptography 3864 Algorithms (3818) Algorithms (3818)Algorithms 3818 Unix APIs (1481) Unix APIs (1481)Unix APIs 1481 Operating systems (1132) Operating systems (1132)OS 1132 Windows APIs (856) Windows APIs (856)Windows APIs 856 macOS and iOS APIs (328) macOS and iOS APIs (328)Apple Data structures (3625) Data structures (3625)Data structures 3625 Encoding (3505) Encoding (3505)Encoding 3505 Filesystem (2431) Filesystem (2431)Filesystem 2431 Graphics APIs (1558) Graphics APIs (1558)Graphics APIs 1558 Rendering (524) Rendering (524)Rendering 524 Data formats (178) Data formats (178)Formats Rendering engine (112) Rendering engine (112)Engine GUI (1924) GUI (1924)GUI 1924 Programming languages (1722) Programming languages (1722)Lang 1722 Authentication (1511) Authentication (1511)Auth 1511 Configuration (1308) Configuration (1308)Config 1308 Compression (1016) Compression (1016)Compression 1016 Memory management (1064) Memory management (1064)Memory management 1064 Date and time (753) Date and time (753)Date and time Visualization (667) Visualization (667)Visualize 667 Simulation (571) Simulation (571)Sim 571 Internationalization (i18n) (540) Internationalization (i18n) (540)i18n Email (524) Email (524)Email Emulators (522) Emulators (522)Emulators 522 Caching (509) Caching (509)Cache 509 Finance (411) Finance (411)Finance 411 Accessibility (96) Accessibility (96)a11y

Ecosystem

Number of crates that have each of the alternatives in their dependencies. More popular doesn't mean better. These crates and categories were hand-picked.

Runtimes
207831382214164
tokioasync-stdpollstersmol
Web frameworks
199910508454243831293421
toweraxumactix-webwarprocketpoemrouillegotham
TLS clients
368516781340
rustlsnative-tlsopenssl
git clients
1116116
git2gix
Loggers
4064018859480
logtracingslog
Error handling
3335320640292614591017722
thiserroranyhowquick-erroreyresnafumiette
Argument parsers
19676961304257101
clapgetoptspico-argsarghargparse
Markdown parsers
786133112
pulldown-cmarkmarkdowncomrak
TOML parsers
11008609527
tomltoml_editbasic-toml
Binary encoders
5611263713071157335109
bincodeprostprotobufrmp-serdeciboriumcapnp
JSON parsers
34989208832412
serde_jsonjson5simd-jsonminiserdetinyjson
Parser generators
7296347215783289425
nompestcombinepegpomlalrpop
XML parsers
17541507671211912624
xml-rsquick-xmlxmlparserxml5everlibxmlrxmlelementtree
Temp files
5554459
tempfiletempdir

Rustc compatibility

Percentage of crates (in their current version) that can be compiled with a given Rust version. The data is based on sampling of cargo check and clippy::incompatible_msrv on Linux/aarch64. Excludes crates that never built (e.g. because they need nightly, or Windows, or unusual C dependencies).

These stats are best-case scenarios that assume use of a most-compatible Cargo.lock file. Fresh projects without a lockfile will be less compatible due to too-new transitive dependencies.

Compatibility weighed by crates' popularity is not a realistic representation of ecosystem-wide compatibility. Actual compatibility is always worse, because MSRV of projects is not an average of their dependencies MSRV, but entirely dependent on their least-compatible dependency.

All crates, including unmaintained ones

RustcOK / No data / Broken deps / Incompatible
1.79 97% compatible 2% no data 0% not compatible because of dependencies 0% not compatible
1.78 96% compatible 3% no data 0% not compatible because of dependencies 0% not compatible
1.77 84% compatible 15% no data 0% not compatible because of dependencies 0% not compatible
1.76 83% compatible 15% no data 0% not compatible because of dependencies 0% not compatible
1.75 82% compatible 16% no data 1% not compatible because of dependencies 0% not compatible
1.74 80% compatible 17% no data 2% not compatible because of dependencies 1% not compatible
1.73 78% compatible 18% no data 3% not compatible because of dependencies 2% not compatible
1.72 76% compatible 19% no data 3% not compatible because of dependencies 2% not compatible
1.71 76% compatible 18% no data 4% not compatible because of dependencies 2% not compatible
1.70 75% compatible 20% no data 4% not compatible because of dependencies 2% not compatible
1.69 72% compatible 19% no data 8% not compatible because of dependencies 5% not compatible
1.68 71% compatible 20% no data 8% not compatible because of dependencies 5% not compatible
1.67 69% compatible 20% no data 9% not compatible because of dependencies 5% not compatible
1.66 66% compatible 22% no data 10% not compatible because of dependencies 5% not compatible
1.65 65% compatible 23% no data 11% not compatible because of dependencies 6% not compatible
1.64 61% compatible 25% no data 13% not compatible because of dependencies 6% not compatible
1.63 60% compatible 23% no data 16% not compatible because of dependencies 7% not compatible
1.62 56% compatible 26% no data 17% not compatible because of dependencies 8% not compatible
1.61 55% compatible 25% no data 19% not compatible because of dependencies 9% not compatible
1.60 53% compatible 26% no data 20% not compatible because of dependencies 9% not compatible
1.56 43% compatible 28% no data 28% not compatible because of dependencies 16% not compatible
1.55 35% compatible 4% no data 60% not compatible because of dependencies 57% not compatible
1.50 32% compatible 4% no data 62% not compatible because of dependencies 58% not compatible
1.45 28% compatible 6% no data 65% not compatible because of dependencies 59% not compatible
1.40 23% compatible 7% no data 69% not compatible because of dependencies 59% not compatible
1.35 18% compatible 8% no data 73% not compatible because of dependencies 61% not compatible
1.31 13% compatible 8% no data 77% not compatible because of dependencies 63% not compatible
1.30 6% compatible 2% no data 91% not compatible because of dependencies 90% not compatible
1.25 5% compatible 2% no data 92% not compatible because of dependencies 90% not compatible

4000 most recently updated crates

RustcOK / No data / Broken deps / Incompatible
1.79 96% compatible 3% no data 0% not compatible because of dependencies 0% not compatible
1.78 73% compatible 25% no data 1% not compatible because of dependencies 1% not compatible
1.77 59% compatible 36% no data 3% not compatible because of dependencies 2% not compatible
1.76 56% compatible 38% no data 5% not compatible because of dependencies 3% not compatible
1.75 39% compatible 37% no data 22% not compatible because of dependencies 18% not compatible
1.74 35% compatible 39% no data 25% not compatible because of dependencies 20% not compatible
1.73 31% compatible 38% no data 30% not compatible because of dependencies 23% not compatible
1.72 28% compatible 40% no data 31% not compatible because of dependencies 23% not compatible
1.71 26% compatible 39% no data 33% not compatible because of dependencies 24% not compatible
1.70 23% compatible 39% no data 37% not compatible because of dependencies 26% not compatible
1.69 18% compatible 34% no data 46% not compatible because of dependencies 33% not compatible
1.68 16% compatible 36% no data 47% not compatible because of dependencies 33% not compatible
1.67 16% compatible 35% no data 48% not compatible because of dependencies 33% not compatible
1.66 13% compatible 36% no data 50% not compatible because of dependencies 33% not compatible
1.65 13% compatible 34% no data 52% not compatible because of dependencies 34% not compatible
1.64 9% compatible 36% no data 54% not compatible because of dependencies 35% not compatible
1.63 8% compatible 33% no data 57% not compatible because of dependencies 36% not compatible
1.62 6% compatible 32% no data 60% not compatible because of dependencies 37% not compatible
1.61 6% compatible 31% no data 62% not compatible because of dependencies 38% not compatible
1.60 5% compatible 30% no data 63% not compatible because of dependencies 39% not compatible
1.56 1% compatible 25% no data 73% not compatible because of dependencies 52% not compatible
1.55 0% compatible 1% no data 97% not compatible because of dependencies 96% not compatible
1.50 0% compatible 1% no data 97% not compatible because of dependencies 96% not compatible
1.45 0% compatible 1% no data 98% not compatible because of dependencies 96% not compatible
1.40 0% compatible 1% no data 98% not compatible because of dependencies 96% not compatible
1.35 0% compatible 1% no data 98% not compatible because of dependencies 97% not compatible
1.31 0% compatible 1% no data 98% not compatible because of dependencies 97% not compatible
1.30 0% compatible 0% no data 99% not compatible because of dependencies 99% not compatible
1.25 0% compatible 0% no data 99% not compatible because of dependencies 99% not compatible

Usage of Rust versions based on crates.io requests

This is based on preliminary request log data. This is not limited to real users, and includes automated traffic like CI.

This many crates.io requests… 0% 5% 48% 61% 76% 84% 89% 90.8% 91.5% 92.5% 94.2% 97.4% 97.7% 97.9% 98.9% 99.1% 99.5%
…use this stable version of Rust or newer 1.81+ 1.80+ 1.79+ 1.78+ 1.77+ 1.76+ 1.75+ 1.74+ 1.73+ 1.72+ 1.71+ 1.70+ 1.69+ 1.68+ 1.67+ 1.66+ 1.65+
This many crates.io requests… 4% 8% 10% 12% 12% 12% 12% 12% 13% 13% 13% 13% 13% 13% 13% 13% 13%
…use this or newer nightly version of Rust 1.81+ 1.80+ 1.79+ 1.78+ 1.77+ 1.76+ 1.75+ 1.74+ 1.73+ 1.72+ 1.71+ 1.70+ 1.69+ 1.68+ 1.67+ 1.66+ 1.65+