To measure the sequential read or write speed, you can use dd.
Write speed:
dd if=/dev/zero of=test.tst bs=4096 count=100000
Read speed:
dd if=test.tst of=/dev/null bs=4096 count=100000
then remove the test file:
rm test.tst
Measuring is tricky, writing small files will get a benefit from caching in RAM, and when reading the data may be in RAM already if the file has recently been read before. Therefore, perform the tests with files larger than the amount of RAM you have.
For more varied tests you can use the iozone tool, it tests the effects of various block sizes and access patterns. SD cards in particular are much better at sequential writes than random writes in small blocks. Brief instructions for compiling iozone, and some ramblings on benchmarking.
SFTP takes a lot of CPU power for the encryption, and can be slow also for that reason. Some unencrypted protocol would be faster, samba works well for me.
In this question about SFTP performance, it is suggested to use the latest firmware on the Pi, an update (roughly October 2012) improved the USB transfer speed.
In general, the file system matters for the performance, for example writing to NTFS is CPU intensive and slow on the Pi.
Two things to try for higher performance: