I clean almost each time i run. I run analog, still, and use rail clamps.
I often run frr stuff, so clean rail is essential with the smaller wheels and wheelbase.
If im running daily, much less, say every four or five days. And, this only when theres no sap.
This year ive got about 90 ft, four points.
I have found clean track solves all my headaches, and, prevents pitting of the wheels from micro arcing. Slow speeds , easy start ups, without stalling.
I use: the cleaning loco, because i have one. (Should it ever break, ill replace it. Its really quite nice, but, pricey.)
The lgb block,
A sled similar to the one in gregs post, sometimes with a hefty weight on top.
This is, generally a pita , since i must triple head. More loco wear than effect.
The unweighted sled may be pushed or pulled for removal of grit, light cleaning.
At one time i used the under the car pads from lgb, but, imho, they are more for very light cleaning, cause derailments on points, and add a bit of drag. Less unsightly than a sled, less effective.
Simply, the lgb block is the most effective, imho. A few swipes, with full pressure cleans better than several slow passes with the loco, but, is less fun, and, more work. Cheap, effective.