We conducted a survey of publicly available information from 100 companies that offer SDKs to accompany their APIs to gain insight into the development process, supported programming languages, and other relevant factors.
The companies we examined covered a range of 18 industries, with the top five being:
SDK Development Process
We analyzed public repositories and documentation to determine that 60% of SDKs were homegrown and built by internal teams. Additionally, we discovered that 34% of businesses employed code generators as part of their SDK program. To track evolving patterns in SDK development, we plan to revisit these businesses in the future.
SDK Automation Opportunities
With 34% of businesses employing code generators and 44% supplying a public API specification, 10% of companies have the potential of automating SDK development. We've noticed a new trend among company that provide API specifications and request developers to create their SDKs. This category accounted for 5% of the surveyed companies. Only 1% of companies elected not to offer official SDKs and instead encouraged community-driven SDK development.
We anticipate that these findings will be useful to API companies looking to enhance their SDK programs and developers seeking to create more efficient SDKs.
SDK Language Breakdown
In our research, we analyzed 474 SDKs from 100 companies. What we discovered was fascinating.
From the oldest SDK, which was released in 2009, to the newest in 2023, we found that the average age of an SDK was a mere 5 years old! SDKs are in constant evolution, always improving and expanding their features to fit users' needs.
But what's even more interesting is the average number of releases, which was 43 over the lifespan of our SDKs. Taking our average age of 5 years, that's roughly 8 releases a year. We are sure this varies between SDK programs and depends on how often APIs change and other factors.
We also found that 86% of these SDKs use semantic versioning, which make it easy for developers to understand changes in the code and quickly adapt to them.