I've had black cloth on mine for just over three years. The material has held up exceptionally well. It's a Robbins Top. I've only ever cleaned it with 303 convertible top/tonneau cleaner, which works really well. Top is still dark dark black, no fading that I can tell. It's parked in my garage overnight but otherwise gets full sun everyday, it being my daily driver here in SoCal. I don't even usually park in shade when outside.
I would definitely do cloth again when it's time to replace, but I'm guessing based on current lack of wear, that won't be for at least a couple more years. The cloth top was $200-$300 more than vinyl, iirc. It's a different look, but a nice one. And I've had no issues with leaking in heavy rain due to the material - only from the usual spots where the weatherstrip or windows aren't sealing properly. I should also note, I have a headliner in my interior, helps with insulation/noise a bit. I also bought a roll of D-Mat, intending to sandwich it between the top and headliner in between each bow,, to further help with sound/heat, but haven't gotten around to it yet. Lastly, I'd probably have the shop put in an extra set of pads in the top next time. The cloth being thinner than vinyl, the bows and hardware can look a little more pronounced underneath the cloth.
My only real issue has been that the shop didn't install the window portion correctly - it's too low in relation to the opening. Instead of the seam along the top of the glass near the zipper being concealed beneath the top and closer to the bow, it's exposed out in the open. The sun constantly beating on the glass seam to the cloth plus that being a stress point has caused that seam to come apart. They've replaced it twice under warranty but not fixed the underlying issue, because they don't believe that's what's causing it. Needless to say I won't be going back to them when it's time for a replacement. I've figured out an alternative solution to sealing that seam for now, that I'm happy with. So just make sure you've found a good shop that will do what you want and you'll be set.