Given the number of questions ive seen about slow usb transfer speeds I have to wonder what speeds should one be expecting for a 'typical' usb2 and usb3 hard drives?

A side question would be what would be considered a proper way to test these speeds.

  • well,, that really depends on the drive you choose, also the motherboard you have, and the amount of data you transfer at once. – Uri Herrera May 9 '11 at 2:29

11 Answers 11


Typical hi-speed USB hard drives can be written to at rates around 25–30 MB/s, and read from at rates of 30–42 MB/s, according to routine testing done by CNet.[62] This is 70% of the total bandwidth available. According to a USB-IF chairman, "at least 10 to 15 percent of the stated peak 60 MB/s (480 Mbit/s) of Hi-Speed USB goes to overhead — the communication protocol between the card and the peripheral. Overhead is a component of all connectivity standards." For isochronous devices like audio streams, the bandwidth is constant, and reserved exclusively for a given device. The bus bandwidth therefore only has an effect on the number of channels that can be sent at a time, not the "speed" or latency of the transmission.

USB supports the following signaling rates: The terms speed and bandwidth are used interchangeably. "high-" is alternatively written as "hi-".

A low-speed rate of 1.5 Mbit/s (~183kB/s) is defined by USB 1.0. It is very similar to full-bandwidth operation except each bit takes 8 times as long to transmit. It is intended primarily to save cost in low-bandwidth human interface devices (HID) such as keyboards, mice, and joysticks. The full-speed rate of 12 Mbit/s (~1.43 MB/s) is the basic USB data rate defined by USB 1.1. All USB hubs support full-bandwidth.

A high-speed (USB 2.0) rate of 480 Mbit/s (~57 MB/s) was introduced in 2001. All hi-speed devices are capable of falling back to full-bandwidth operation if necessary; i.e. they are backward compatible with USB 1.1. Connectors are identical for USB 2.0 and USB 1.x.

A SuperSpeed (USB 3.0) rate of 4800 Mbit/s (~572 MB/s). The written USB 3.0 specification was released by Intel and partners in August 2008. The first USB 3 controller chips were sampled by NEC May 2009[55] and products using the 3.0 specification arrived beginning in January 2010.[56] USB 3.0 connectors are generally backwards compatible, but include new wiring and full duplex operation.

Source: http://en.wikipedia.org/wiki/Universal_Serial_Bus

| improve this answer | |
  • I never get over 150 MegaBytes/second for USB 3.0 external hard drives (very large files, not a whole bunch of small files.) I'm about to get a new computer and I'll see if this is still the case. – user3015682 Oct 3 '19 at 22:51

Ubuntu's Disk Utility program has the ability to benchmark a drive, with nice graphs and data. You can test the read speed on a drive in use, but I think the drive needs to be unpartitioned and unformatted for it to run a read + write benchmark test.

I normally see about 20-25MB/s when using external USB drives, it usually won't go much higher, but it can drop quite a bit, and sometimes hang.

| improve this answer | |
  • Due to another topic: same for me and it goes from 23 to 28 roughly) Disk Utility on the main screen says 480 MB/s; should be 480 Mbit/s (/8 = +-60 MB/s). – Rinzwind May 9 '11 at 13:21

I have several external hard drives and speaking from experience I have attained speeds of up to 20Mbp/s, all of which are connected via USB 2.0.

This has been the same speeds attained when I was using Windows also, and as there's been no increase or decrease since I changed to Ubuntu, I'd guess that the drives were running at their optimal.

As for the question of testing the transfer rate of a USB hard drive, I'm unsure what benchmarking software is available on Ubuntu.

| improve this answer | |
  • 1
    Right now i am copying several GB from one external USB2 hard drive to a 2nd external USB 2 HD. the program 'mc' is showing a speed i think of around 8-12MB/Sec so it seems a bit slow here. I guess this is a 'worse case' situation. at least Now i know of some ballpark figures to be watching for, – dr_willis May 9 '11 at 12:52
  • @dr_willis In that particular scenario, one thing that could cause slowdown would be having the two drives connected to ports which internally are chained off the same hub. There's little one can do about it, besides trying different combinations of ports and seeing if there's any improvement, but it's worth being aware of. – Darael Jan 20 '14 at 18:58
  • 1
    Did you mean to type 20MBp/s, with a capital "B" (byte) instead of a lowercase "b" (bit)? 20 Mbp/s is 20000000 bits per second, which is 2500000 bytes per second (2.5MB/s or 2.38MiB/s). – Flimm Feb 29 '16 at 11:02

I plugged my Toshiba external USB3 drive into a USB2 port - it copies files at 22Megabytes per second.

In a USB3 port, it manages nearly four times the speed - 82Megabytes per second.

| improve this answer | |

I have a 2 year old external Western Digital 500GB (WDBAAR500ABK-00) wich is USB2.0, USB powered, and HDDTune on windows reports an average transfer rate of 32.5Mps

Also I have a new Seagate e-desktop 2TB (STBV2000200) connected via USB2 (PC has no USB3, although the disk does) and it reports 33MBps. It is powered from an external source.

Internal SATA2 7200rpm disk is 3-4 times faster

With my limited data, it looks like USB2.0 limits speed to about 33Mbps, and usb power is not an issue ay these speeds.

| improve this answer | |
  • You are using the units MBps and Mbps, I'm not sure if you realise that a lower-case b indicates a bit, which is 8 times smaller than a byte indicated by an uppercase B. – Flimm Feb 29 '16 at 11:07

I don't notice any difference when writing to the hard drive, only when retrieving data from it i do see a difference when it comes to usb 2.0 and usb 3.0.

The writing to the drive is as someone said above between 20 - 30mb/s and it can drop to like 1mb/s

The retreiving data however goes up to 70mb/s sometimes. (Copying FROM the drive)

| improve this answer | |
  • 1
    You are using the unit mb/s with a lowercase b, which is 1 million bits per second, which is equal to 125000 bytes per second. I think you meant to use MB/s or MiB/s. – Flimm Feb 29 '16 at 11:04

It also depends on what size files you are reading or writing. If it's a bunch of small files then the speed will be slower than if it is one or a few large files. Also the way the drive is formatted makes a difference. If the drive is formatted NTFS it's usually faster than if it's FAT32, at least that's what have experienced after formatting my drive to NTFS. Also FAT32 has a 4GB file size limit, NTFS is 16TB or more. The only possible problem with NTFS is that some programs might not support it.

| improve this answer | |

@Seth: The hard drive and USB interface will fail / corrupt data if not enough power is available. If you grow bad sectors, that's a good sign of insufficient power. Most of the drive power is consumed by head movement and drive spinup. Another sign of poor power is drive stalling during startup.

As far as the cluster size, you only reduce the number of times the OS has to allocate more clusters, which hopefully is a small percentage of the disk traffic, and other related CPU overhead.

According to http://www.beyondlogic.org/usbnutshell/usb4.shtml the maximum USB packet size is 512 bytes, which explains why we seem to be topping out near 22 MB/sec on USB2.0 (my own measurements with 1TB transfers). And yes, I also see dropouts where the speed isn't maximum, probably some low-level implementation/performance issues in Win7 or the chipsets. During that time, I see a dual-core i5 getting about 27% interrupt overhead, which is about the maximum an OS can take.

SATA and GigE are designed for streaming with larger packet sizes and packet management hardware offloading to avoid killing the OS and CPU. Since I don't have a USB 3.0 host available, I can't comment on how well those chips/drivers perform. I do hope that they bump the packet size - they do have 2-byte data length fields. I use 4K and 8K jumbo packets, and it helps drop the workload measurably.

| improve this answer | |

I haven't done any study on the data transfer speeds of external hard drives, but I can tell you from my experience, that a USB 2.0 drive supplying a speed of around 20 MBPS can termed as good.
With USB 3.0 you can expect more at around 40 MBPS.

| improve this answer | |

This is good for those of us with old hard drives that we'd like to use in a caddy. Dedicated externals might be smaller and lighter but their speed is restricted by the usb interface, so a really fast drive is somewhat wasted. Old IDE drives, even ATA33 models, should attain typical USB2 speeds and be just as usable as newer SATA drives.

Okay, so I've just carried out a test using an external USB enclosure fitted with a Maxtor 250GB IDE ATA100 hard drive (7200rpm) NTFS format. Using HD Tune I got the following results:

USB 1.1 port Min, Max and Average transfer speeds all 0.9 MB/s Access time 19.2 ms Burst Rate 0.8 MB/s

USB 2.0 port Min 32.6 MB/s Max 34.8 MB/s Ave 33.2 MB/s Access 15.5 ms Burst 27.8 MB/s

My internal SATA II drive gave the following result: Min 54.1 MB/s Max 129.6 MB/s Ave 101.9 MB/s Access 16.9 ms Burst 191.4 MB/s

| improve this answer | |

Primarily I believe the power being supplied to the drive is external drive bottlenecking performance. Say a usb port supplies say it's optimal of up to 1 Amp or 1,000 Milli Amps of electricity. Now you look at a western digital 7200rpm 2.5" sata drive requires say 2,500 Milli Amps to attain maximum revolutions which may spit out 100MB/s write over sata 2. We then convert the interface to usb with it's limited power output of 1000ma. It can only feed the drive 1000ma out of it's required 2500ma. It reduces the power which in turn reduces the revolutions by 60%. That 60% reduction in power leaves only 40% of the drive being powered over the 1A max output and that 1A is only of certified systems which state that they charge at 1A max or 500ma max or it could be that if your using only the hard drive over usb you attain that full 1A of energy. If you use any other USB ports on the system your reducing the milli amp draw on each usb port since the usb interface would fry if it could power all usb ports at full 1a power unless specifically stated by the manufacturer. So try unplugging all usb devices and only plug in the drive for a test, try using ps/2 keyboard/ mouse. One more thing is the format is important for usb drives as well since sometimes you have to find the ideal cluster size for the interface/ drive limit. So typically NTFS 64KB Clusters is ideal for any drive for optimal big end performance. However some drives don't run solid at 64KB so I'd start at 8KB clusters, then try 4KB Clusters, and finally 2KB Clusters. Format and copy a file to the drive and show details of how many MB/s it's getting. Make a mental note of the speeds to it's corresponding cluster size. Then use which one one runs best. I would test 2KB, 4KB, 8KB, and 64KB and see which one gets the best maximum or best average. Typically 64KB is always ideal but smaller sometimes results in a tiny gain on small file transfer performance, since 64KB clusters is ideal for large files.

If we could figure out how to feed our external drives extra power from say a 2.5A 5.0V charger which would feed it through a usb power splitter like say a high end AC External powered usb hub which charged each port up to 2.5A each. Then you would be golden and will achieve optimal usb 2.0/ 3.0 speeds so we're talking up to say 64MB/s write on usb 2.0 and beyond 100MB/s on usb 3.0 ports if the drive will allow it.

| improve this answer | |
  • 3
    Could you please edit your answer into littler paragraphs? It would be easier on the eyes, IMO. – user25656 Mar 1 '13 at 2:42

Not the answer you're looking for? Browse other questions tagged or ask your own question.