I knit my own from leftover cotton yarn. They last a lot longer than any store-bought dishcloth I've used. The downside is, I'm not a fast knitter so it's takes a while to make. But once made, they last about 1-2 years, depending on how hard I am on them.