SD Card classes can be confusing to say the least. We will shed some light on the topic and explain how to choose the best Card for your application.
This post is part of a three part mini series about SD Cards with some in depth information.
- Part 1 – How to classify SD Cards and choose the right Card for an application
- Part 2 – How does flash memory work (coming next week)
- Part 3 – What are Card grades and why are they important (coming in two weeks)
Take a look at our info graphic if you want an overview or a quick reminder on SD Card classes.
With size I refer to the actual physical size of an SD Card. The SD Association released the original SD standard in 1999. An SD Card is 24mm x 32mm and weighs about 2 grams. In 2003 the miniSD Card was introduced, with a 20mm x 21.5mm and about 800mg in weight. The microSD Card is available since 2005. With 11mm x 15mm in size and about 250mg it was the smallest and lightest format for a long time. In 2018 Huawei started to produce their Nano Memory or NM Card which – although it is not part of the SD Association standard – can be considered a successor to the microSD Card.
Keep in mind that the physical size of an SD Card is hardly if at all related to the storage size.
Every Card format uses it’s own interface so be aware of that when choosing a card for your application.
SD Card Storage Size
The storage capbilities of SD Cards have increased drastically over the last 20 years. The SD Association (SDA) is responsible for declaring SD standards.
The SDA established the SDSC standard in 1999. SC means Standard Capacity and it includes SD Cards up to 2GB of storage. In 2006 they defined the SDHC (High Capacity) standard which includes Cards up to 32GB. Since the storage size of flash memory skyrocketed during that period, the 2009 SDXC (Extended Capacity) standard includes Cards up to 2TB. Finally in 2018 the SD Association released the SDUC (Ultra Capacity) up to 128TB.
On top of each Card you should be able to see he Storage capacity and the matching SD standard.
How much storage capacity you need highly depends on the application that you have in mind.
Just like with USB, there exist different bus types for SD Cards. They are not always compatible and differ drastically in terms of possible writing speed.
The following bus speeds can only be reached when the Card and the host use the same bus.
If no bus indicator is printed on the SD Card it likely uses the High Speed Bus with up to 25 MB/s. The UHS-I Bus supports up to 104 MB/s. Then there is UHS-II with maximum 312 MB/s and UHS-III at up to 624 MB/s. In most cases if a card uses an UHS Bus it will be denoted accordingly by a roman number.
Finally if you see EX or Express on a card that means it uses the Express Bus which supports top speeds ranging from 985 MB/s up to 3940 MB/s!
Regarding the compatibility High Speed and UHS-I Cards can be used with any host device. If you want to know more about compatibility take a look at this infographic from the SD Association.
Always try to match the bus of the card and the host device to obtain the highest speed.
SD Card Speed Classes
Take a look at the top of an SD Card and you will see lot’s of logos that denote the speed class. There is a huge variety in Card speeds even between Cards of the same speed class and oftentimes even between two Cards of the same type from the same vendor. Especially when you look at consumer grade Cards, some can be twice as fast as identical cards from the same vendor – we will expand on this topic in part 3 of the series.
The speed classes indicate the minimum speed at which the Card should perform standard operations.
Until now the SD Association defined four speed class standards
The Speed class or legacy speed class indicates the minimum sequential writing speed. The four subdivisions are C2 for a minimum of 2 MB/s, C4 for a minimum of 4 MB/S, C6 with a minimum of 6 MB/s and C10 with at least 10 MB/s.
UHS Speed Class
The UHS or Ultra High Speed Class extends the legacy speed class with U1 for a minimum sequential write speed of 10 MB/s and U3 for at least 30 MB/s.
Video Speed Class
To support even higher resolution such as 8K, the SDA created the Video Speed Class. It starts with V6 or at least 6 MB/s sequential writing speed. V10 denotes 10 MB/s, V30 means at least 30 MB/s. Finally it goes all the way up to V60 with 60 MB/s and even V90 with 90 MB/s.
Application Performance Class
The Application Performance Classes not only define the minimum sequential write speed (which is 10 MB/s for both), they also define the minimum Input/Output Operations per second or IOPS. The two currently defined classes are A1 with 1.5K IOPS minimum random read speed and 500 IOPS minimum random write speed and A2 with 4K IOPS read speed and at least 2K IOPS random write speed.
Be aware of these classes if you need to read data from the SD Card too.
Choose the right SD Card
Now you know how to classify any SD Card. If you want to choose the best Card for your application, the three most important things to consider are budget, required memory and required speed.
For running a Raspberry Pi you need at least 8 GB of storage although 16 GB is widely accepted as the best compromise between functionality and cost efficiency. However if you are doing memory heavy tasks with your Raspberry Pi you might want to take an SDXC Card.
Many video cameras require SD Cards as storage device. Especially when recording 4K or 8K video you need lot’s and lot’s of memory. Aim towards a Card with 256 GB or more and with 10 MB/s write speed at the very least.
The prices usually increase drastically with higher storage or speed. Hence it is not always the most cost effective solution to pick up a high end Card, if a cheaper Card can do the job.
Also you might want to consider the form factor of the Card. Of course there are all kinds of adapters so that you can basically fit any Card into any SD compatible device.