Lib.rs › Stats

Rust crates ecosystem statistics.

Growth of the crates.io registry

Download history of all crates since 2015 19M 37M 56M 75M 94M 112M 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.0× per year.

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

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

36146 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 36,146 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 138956 crates.

Histograms

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
25895
12862
12897
13390
10756
8514
6941
6024
5325
4409
10 11 ≥12 ≥14 ≥16 ≥18 ≥20 ≥25 ≥30 ≥40 ≥60 ≥80 ≥100 ≥120 ≥150
3514
3269
5079
3225
2608
1914
2691
1465
1341
618
105
37
10
2
5
hashira-wasm rustzx aigc_config dg_xch_puzzles rbe_testsuite azure_svc_schemaregistry kickasstorrent dominator azure_mgmt_education larz flexi_logger_datadog cargo-temp imgui-wgpu oxcc-nucleo-f767zi iroh-io scoopie aura-core tiny-mailcatcher surgefx-ringmod web-glitz frac-stake ezno-parser shorust aws-sdk-ivschat swc-plugin-inferno aws-sdk-codepipeline turbocommit cdbc-sqlite jpre what aorist_attributes stripe-integration monoio tori snarkvm-parameters zeronsd devolutions-crypto byztimed r2r blockscout-tracing-actix-web rplc modbot jirust clockwork-cli crowbook stm32h7xx-hal nativeshell pangu-bollard jj-cli matrix-sdk-ui novel-cli rtx-cli summavy northstar-runtime inexor-rgf-rt surrealdb-core-nightly denox zino-core solana-core lurk westend-runtime holochain lingua tina-core polkadot-service coreutils zero4rs homestar-workspace-hack uhg-custom-appollo-roouter forest-filecoin apollo-router zigbee2mqtt-types

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 ≤20MB
62213
43216
6385
6876
1716
2537
618
46
12
hashira-wasm android allaudiotags nugine-rust-utils signum-sign themefox-manager presage puruspe dayan gsm parse-wiki-text-2 tori stack_test_epic_api lobtui libp2prs-core rustc-ap-rustc_data_structures cmake_tui dynasm marseille chalk-solve proxyboi tree-sitter-ruby wlambda ankiding parmesan kon nf-rated delta_2a_lidar cfn aide bevy_crt cryptoauthlib-sys RustPrimeNumberLibrary auto_correct qt_core wycheproof image_sieve efm32wg-pac lief-sys efm32gg-pac rbspy-testdata lindera-ko-dic pv_cheetah difftastic v8

Number of releases per crate

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

1 2 ≥4 ≥8 ≥16 ≥32 ≥50 ≥100 ≥500
43361
32988
25860
16624
8655
2871
1949
547
41
curve-casper-erc20 deflux osm abscissa_api mango_compiler_lexing leptos-font-icons nugine-rust-utils fwdt bwapi frost-schnorrkel split_channel gcmodule_derive serde_extra alhc rsgit randlib leftwm-core rbe_testsuite jqoiview grid2d tmdb_client eqlog wit-bindgen-c metrics_distributor patched_porobot flume eventsourced-postgres rill-engine aws-sdk-sagemakermetrics pallet-node-authorization conjure-codegen atspi fbtoggl redis-async re_space_view lightspeed_cms cargo-tarpaulin elrond-wasm autd3-link-twincat macchina rustc-ap-rustc_data_structures rustc-ap-syntax rustc-ap-rustc_cratesio_shim sn_testnet swc_ecma_transforms_optimization

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
4128
5174
7922
17093
26372
20767
17671
12197
14137
7435
dav-server-opendalfs demo_test_add_2_numbers ohkami_lib double-ratchet-signal-cbc-aes256-pkcs7-compact hlk_ld6002 cdragon-rst metromc hkkim_lib_wikibooks_rpn_test shared_resources nope-lang suitest nml-matrix canvy globenv list-manager icrc1-test-env crypto_vectors stupid_utils poncu ebq airsim-client bevy_ui_style_builder bitwrought bevy_ui_builder ark-secp384r1 versionman i-slint-backend-qt dioxus-interpreter-js hippo-openapi azure_svc_loadtestservice steamlocate aki-xcat random_stuff arci-ros consecrates vadeen_osm rightscrapex rusty_hogs ellidri tge-scene oauth2_noserver cautious-octo-funicular biu local_weather lv2rs-urid yubirs ltc-modulate cellsplit partition ocean

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
41059
25318
8706
15988
11026
12743
7397
7125
2523
1011
curve-casper-erc20 abscissa_api mango_compiler_lexing osm deflux neuedu-cryptos nugine-rust-utils variable-manager-pkg leptos-font-icons shorust uzers paperdoll-tar sleek miraland-cost-model cfmt-macros tm-anode-api docker4rs crossbow-ios dialect blot-lib parson zkwork_aleo_protocol hippo-openapi sigfinn cargo-docker gmt_dos-clients_mount framels re_ws_comms zkp-criterion-utils native-pkcs11 below-config sgx_tcrypto google-cognitive-apis quad-snd reqwest_cookie_store pest_fmt io-result-optional opentelemetry-contrib polars-io circadia glyph_brush regex-automata tree-sitter-cli serial_test rubbl_core flatbuffers field-offset gcd dtoa mles

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
15750
9944
12059
19246
24487
16766
13162
8794
9022
3666
leptos-font-icons rbe_testsuite swc-plugin-inferno openlibspot-protocol airnc head_tail bryte_descriptor_state prost-helper nope-lang git2-ureq neptune-cash hax-subcommands find_port sra-wasm cw721-controllers spirt frost-schnorrkel wasmgdb_ddbug_parser crypto_vectors meansd-cli nvm-rust coi-actix-web airsim-client typoscale rubbl_core vdj_types windows-string new_mime_guess weighted-rs-1 stylize llambda parkour_derive tip merk sc-light punk actix-delay encodings redis-asio ucelofka cmd_rs biu ravenlib curl_bash sns-push-notifications pentry iron-sessionstorage tk-easyloop cellsplit dua

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 ≥250 ≥500 ≥750 ≥1000 ≥2500 ≥5000 ≥10000 ≥15000 ≥20000 ≥50000
18293
13699
7899
4163
1383
1149
541
276
161
352
159
92
48
28
92
12
rtaudio-sys oxidized_navigation hearth-interconnect suspicious-pods-lib springql-core color-name mg-settings rust_icu_ucol is_prime mongo_driver somm_cosmos_gravity scrappy qr_code sentc-crypto-common stdinix mpd ws2812-timer-delay qinetic_app tet-libp2p-core interledger-service speculoos cosmrs pallet-xcm ts-rs blas-src aptos-types vec1 keccak-hash blake2b-rs protobuf-parse symphonia tetsy-kvdb oxiri bb8 amq-protocol solana-rpc-client gloo pnet_base caffe2-derive caffe2-proto solana-rpc-client-api cxx-build syntex_pos hound solicit az tokio-service sp-weights lexical-parse-float chrono-tz frame-metadata spl-memo paste-impl scrypt rw-stream-sink libflate ouroboros_macro integer-encoding yup-oauth2 glib relative-path sp-std rle-decode-fast jsonwebtoken rstest const_fn android-properties actix-web unarray alloc-stdlib scale-info html5ever atoi actix-http actix-utils core-graphics-types aes prettyplease crossbeam-queue async-stream-impl crossbeam serde_cbor ciborium-io async-stream ciborium winapi-build strum strum_macros sct os_str_bytes dirs rdrand cast linked-hash-map arrayref rayon-core spin sync_wrapper rayon atty tokio-macros rustc-hash ipnet anstyle unicode-xid linux-raw-sys httparse try-lock num-integer want crypto-common time http-body futures httpdate itertools aho-corasick slab heck unicode-width unicode-normalization typenum web-sys futures-sink futures-io autocfg serde_derive proc-macro2 serde memchr libc unicode-ident cfg-if quote syn

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
17286
6243
6413
4883
608
119
61
39
14
22
1
dgoodlad kouky beefsack tolbrino ernesto-jimenez shanesveller raggi Mange zacheryph anieuwland paulstansifer melito DevNulPavel yury andy128k antage joshuaclayton emkay acj lukesneeringer aruiz sporkmonger thijsc pjenvey peterhj monoid filmil stepancheg archer884 astro Taywee youknowone kardeiz MaulingMonkey dylanmckay rust-embedded ry phodal Battula-anil-app-could john-sharratt jonhoo ematipico shamilsan jeremyBanks zippy rise0chen tauri-bot CjS77 aspect udoprog servo matklad PistonDevelopers valff zakarumych taiki-e yoshuawuyts clearloop a-kenji-buildbot newpavlov vpetrigo btwiuse cart Manishearth seam345 MaterializeInc RustCrypto cataggar rusoto klebs6 solana-grimes kennykerr

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.

Rust patterns (7108) Rust patterns (7108)Rust patterns 7108 Procedural macros (5652) Procedural macros (5652)Proc macros 5652 Concurrency (1773) Concurrency (1773)Concurrency 1773 Web programming (6572) Web programming (6572)Web programming 6572 WebAssembly (2240) WebAssembly (2240)WebAssembly 2240 HTTP server (1831) HTTP server (1831)HTTP server 1831 HTTP client (601) HTTP client (601)HTTP HTTP client (601)client 601 WebSocket (418) WebSocket (418)WebSocket 418 Network programming (8231) Network programming (8231)Network programming 8231 Asynchronous (3133) Asynchronous (3133)Async 3133 Magic Beans (9714) Magic Beans (9714)Crypto Magic Beans 9714 Development tools (4324) Development tools (4324)Development tools 4324 Testing (1197) Testing (1197)Testing 1197 Build Utils (1169) Build Utils (1169)Build Utils 1169 Debugging (1151) Debugging (1151)Debugging 1151 Cargo plugins (1017) Cargo plugins (1017)Cargo Cargo plugins (1017)plugins 1017 Profiling (585) Profiling (585)Profiling FFI (455) FFI (455)FFI Embedded development (3478) Embedded development (3478)Embedded Embedded development (3478)development 3478 Hardware support (2864) Hardware support (2864)Hardware Hardware support (2864)support 2864 No standard library (483) No standard library (483)No standard library 483 Command line utilities (5819) Command line utilities (5819)Command line utilities 5819 Command-line interface (1171) Command-line interface (1171)Command-line interface Text processing (3714) Text processing (3714)Text processing 3714 Template engine (763) Template engine (763)Template Template engine (763)engine 763 Text editors (624) Text editors (624)Editors Value formatting (440) Value formatting (440)Value formatting Math (2024) Math (2024)Math 2024 Machine learning (1326) Machine learning (1326)Machine learning 1326 Science (1311) Science (1311)Science 1311 Biology (373) Biology (373)Biology 373 Geospatial (330) Geospatial (330)Geo Robotics (192) Robotics (192)Robots Database interfaces (4433) Database interfaces (4433)Database interfaces 4433 Database implementations (391) Database implementations (391)Database Game dev (3656) Game dev (3656)Game dev 3656 Games (1009) Games (1009)Games 1009 Algorithms (4285) Algorithms (4285)Algorithms 4285 Parser implementations (4118) Parser implementations (4118)Parser implementations 4118 Parser tooling (340) Parser tooling (340)Parser tooling Cryptography (3931) Cryptography (3931)Cryptography 3931 Audio (1475) Audio (1475)Audio 1475 Images (1378) Images (1378)Images 1378 Video (639) Video (639)Video Multimedia (503) Multimedia (503)Multimedia Data structures (3538) Data structures (3538)Data structures 3538 Unix APIs (1397) Unix APIs (1397)Unix APIs 1397 Windows APIs (828) Windows APIs (828)Windows APIs 828 Operating systems (921) Operating systems (921)OS 921 macOS and iOS APIs (203) macOS and iOS APIs (203)Apple Encoding (3190) Encoding (3190)Encoding 3190 Filesystem (2717) Filesystem (2717)Filesystem 2717 Graphics APIs (1608) Graphics APIs (1608)Graphics APIs 1608 Rendering (471) Rendering (471)Rendering 471 Data formats (121) Data formats (121)Formats 121 Rendering engine (70) Rendering engine (70)Engine GUI (1781) GUI (1781)GUI 1781 Authentication (1481) Authentication (1481)Auth 1481 Configuration (1429) Configuration (1429)Config 1429 Programming languages (967) Programming languages (967)Lang 967 Compression (958) Compression (958)Compression 958 Memory management (983) Memory management (983)Memory Memory management (983)management 983 Caching (763) Caching (763)Cache Date and time (689) Date and time (689)Date and time Email (587) Email (587)Email 587 Visualization (607) Visualization (607)Visualize 607 Simulation (541) Simulation (541)Sim Internationalization (i18n) (496) Internationalization (i18n) (496)i18n Emulators (464) Emulators (464)Emulators 464 Finance (370) Finance (370)Finance 370 Accessibility (102) Accessibility (102)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
183011290176130
tokioasync-stdpollstersmol
Web frameworks
15948237923973571203321
toweraxumactix-webwarprocketpoemrouillegotham
TLS clients
323015671127
rustlsnative-tlsopenssl
git clients
102089
git2gix
Loggers
3677916342449
logtracingslog
Error handling
289341847629191170882576
thiserroranyhowquick-erroreyresnafumiette
Argument parsers
17701875245240100
clapgetoptspico-argsarghargparse
Markdown parsers
738114101
pulldown-cmarkcomrakmarkdown
TOML parsers
9926510155
tomltoml_editbasic-toml
Binary encoders
495322321198101823199
bincodeprostprotobufrmp-serdeciboriumcapnp
JSON parsers
31175169511912
serde_jsonjson5simd-jsonminiserdetinyjson
Parser generators
6315315513512767422
nompestcombinepegpomlalrpop
XML parsers
16591282620197892424
xml-rsquick-xmlxmlparserxml5everlibxmlelementtreerxml
Temp files
4793426
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 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.76 96% compatible 3% no data 0% not compatible because of dependencies 0% not compatible
1.75 96% compatible 3% no data 0% not compatible because of dependencies 0% not compatible
1.74 96% compatible 3% no data 0% not compatible because of dependencies 0% not compatible
1.73 94% compatible 5% no data 0% not compatible because of dependencies 0% not compatible
1.72 93% compatible 6% no data 0% not compatible because of dependencies 0% not compatible
1.71 93% compatible 6% no data 0% not compatible because of dependencies 0% not compatible
1.70 93% compatible 5% no data 1% not compatible because of dependencies 0% not compatible
1.69 90% compatible 6% no data 3% not compatible because of dependencies 1% not compatible
1.68 88% compatible 6% no data 4% not compatible because of dependencies 1% not compatible
1.67 86% compatible 8% no data 5% not compatible because of dependencies 1% not compatible
1.66 83% compatible 10% no data 6% not compatible because of dependencies 1% not compatible
1.65 82% compatible 10% no data 7% not compatible because of dependencies 2% not compatible
1.64 77% compatible 13% no data 8% not compatible because of dependencies 2% not compatible
1.63 76% compatible 11% no data 11% not compatible because of dependencies 3% not compatible
1.62 71% compatible 15% no data 13% not compatible because of dependencies 3% not compatible
1.61 70% compatible 15% no data 14% not compatible because of dependencies 4% not compatible
1.60 67% compatible 15% no data 16% not compatible because of dependencies 4% not compatible
1.56 55% compatible 19% no data 24% not compatible because of dependencies 10% not compatible
1.55 45% compatible 3% no data 51% not compatible because of dependencies 47% not compatible
1.50 42% compatible 3% no data 54% not compatible because of dependencies 49% not compatible
1.45 36% compatible 5% no data 57% not compatible because of dependencies 49% not compatible
1.40 31% compatible 6% no data 62% not compatible because of dependencies 50% not compatible
1.35 24% compatible 7% no data 67% not compatible because of dependencies 50% not compatible
1.31 18% compatible 9% no data 72% not compatible because of dependencies 50% not compatible
1.30 8% compatible 2% no data 89% not compatible because of dependencies 87% not compatible
1.25 7% compatible 2% no data 90% not compatible because of dependencies 88% not compatible

4000 most recently updated crates

RustcOK / No data / Broken deps / Incompatible
1.76 90% compatible 9% no data 0% not compatible because of dependencies 0% not compatible
1.75 90% compatible 9% no data 0% not compatible because of dependencies 0% not compatible
1.74 86% compatible 9% no data 3% not compatible because of dependencies 1% not compatible
1.73 77% compatible 15% no data 6% not compatible because of dependencies 3% not compatible
1.72 72% compatible 20% no data 6% not compatible because of dependencies 3% not compatible
1.71 71% compatible 19% no data 9% not compatible because of dependencies 5% not compatible
1.70 68% compatible 18% no data 13% not compatible because of dependencies 6% not compatible
1.69 58% compatible 19% no data 21% not compatible because of dependencies 8% not compatible
1.68 52% compatible 25% no data 22% not compatible because of dependencies 8% not compatible
1.67 37% compatible 25% no data 37% not compatible because of dependencies 8% not compatible
1.66 30% compatible 27% no data 41% not compatible because of dependencies 9% not compatible
1.65 27% compatible 29% no data 42% not compatible because of dependencies 10% not compatible
1.64 22% compatible 29% no data 47% not compatible because of dependencies 12% not compatible
1.63 20% compatible 24% no data 54% not compatible because of dependencies 13% not compatible
1.62 15% compatible 24% no data 59% not compatible because of dependencies 15% not compatible
1.61 14% compatible 23% no data 61% not compatible because of dependencies 15% not compatible
1.60 12% compatible 23% no data 63% not compatible because of dependencies 15% not compatible
1.56 4% compatible 21% no data 73% not compatible because of dependencies 27% not compatible
1.55 2% compatible 2% no data 95% not compatible because of dependencies 93% not compatible
1.50 1% compatible 1% no data 96% not compatible because of dependencies 94% not compatible
1.45 1% compatible 1% no data 96% not compatible because of dependencies 94% not compatible
1.40 0% compatible 1% no data 97% not compatible because of dependencies 94% not compatible
1.35 0% compatible 1% no data 97% not compatible because of dependencies 94% not compatible
1.31 0% compatible 1% no data 98% not compatible because of dependencies 94% 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% 7% 49% 67% 77% 82% 86% 90% 95.7% 96.5% 97.0% 98.0% 98.5% 99.1% 99.8%
…use this stable version of Rust or newer 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+ 1.60+
This many crates.io requests… 6% 8% 9% 10% 12% 12% 12% 13% 13% 13% 13% 13% 13% 13% 13%
…use this nightly version of Rust or newer 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+ 1.60+