We used to say that there are a billion users of curl. It makes a good line to
say but in reality we, of course, don’t have any numbers that exact. We just
estimate and guess based on observations and trends. It also depends on
exactly what you would consider “a user” to be. Let’s elaborate.
The project being Open Source and very liberally licensed means that
just about anyone can redistribute curl in source format or built into binary
The curl command-line tool and the libcurl library are available for download
for most operating systems via the curl web site, they are provided via third
party installers to a bunch and and they come installed by default with yet
more operating systems. This makes counting downloads from the curl web site
completely inappropriate as a means of measurement.
So, we can’t count downloads and anyone may redistribute it and nobody is
forced to tell us they use curl. How can we figure out the numbers? How can we
figure out the users? The answer is that we really can’t with any decent level
Instead we rely on witness reports, circumstantial evidence, on findings on
the Internet, the occasional “about box” or license agreement mentioning curl
or that authors ask for help and tell us about their use.
The curl license says users need to repeat it somewhere, like in the
documentation, but that’s not easy for us to find in many cases and it’s also
not easy for us to do anything about should they decide not to follow the very
small license requirement.
The command-line tool curl is widely used by programmers around the world in
shell and batch scripts, to debug servers and to test out things. There’s no
doubt it is used by millions every day.
libcurl is what makes our project reach the really large volume of users. The
ability to quickly and easily get client side file transfer abilities into
your application is desirable for a lot of users, and then libcurl’s great
portability also helps: you can write more or less the same application on a
wide variety of platforms and you can still keep using libcurl for transfers.
libcurl being written in C with no or just a few required dependencies also
help to get it used in embedded systems.
libcurl is popularly used in smartphone operating systems, in car infotainment
setups, in television sets, in set-top boxes, in audio and video equipment such
as Blu-Ray players and higher-end receivers. It is often used in home routers
A fair number of best-selling games are also using libcurl, on Windows and
The libcurl binding for PHP was one of, if not the, first bindings for libcurl
to really catch on and get used widely. It quickly got adopted as a default
way for PHP users to transfer data and as it has now been in that position for
over a decade and PHP has turned out to be a fairly popular technology on the
Internet (recent numbers indicated that something like a quarter of all sites on
the Internet uses PHP).
A few really high-demand sites are using PHP and are using libcurl in the
backend. Facebook and Yahoo are two such sites.
Nothing forces users to tell us they use curl or libcurl in their services or
in the products. We usually only find out they do by accident, by reading
about dialogues, documentation and license agreements. Of course some
companies also just flat out tell us.
We collect names of companies and products on our web site of users that use
the project’s products “in commercial environments”. We do this mostly just to
show-off to other big brands that if these other guys can build products that
depend on us, maybe you can, too?
The list of companies are well over 200 names, but extracting some of the
larger or more well-known brands, here’s a pretty good list that, of course, is
only a small selection:
Adobe, Altera, AOL, Apple, AT&T, BBC, Blackberry, BMW, Bosch, Broadcom,
Chevrolet, Cisco, Comcast, Facebook, Google, Hitachi, Honeywell, HP, Huawei,
HTC, IBM, Intel, LG, Mazda, Mercedes-Benz, Motorola, Netflix, Nintendo,
Oracle, Panasonic, Philips, Pioneer, RBS, Samsung, SanDisk, SAP, SAS
Institute, SEB, Sharp, Siemens, Sony, Spotify, Sun, Swisscom, Tomtom, Toshiba,
VMware, Xilinx, Yahoo, Yamaha