Long time lurking and this is my first post, I've learnt a lot from this forum and it's about time I made a contribution back, so I thought that I would finally chip in with my views as I don't necessarily agree with what people have said so far.
If you get the right punter then discounts for regulars can be mutually beneficial. My experience with one is that he was booking me about once every 6 weeks for two hours, he then just made unprompted comment at the end of a booking that he would love to see me more but he wasn't able to afford it.
I didn't say anything at the time, but emailed him a few days later and said that I'd be prepared to offer him a 25% discount on my 2 hour rate if he booked to see me at least twice a month. There would also be further conditions in place that he could book me only for either AM or PM on a specific day and I would let him know what time I wanted him to come the day before as this enabled me to slot him into any gaps that I have in my schedule. I was expecting him to come back and try and renegotiate the terms, but he accepted them!!! I didn't for one minute think that this would be amenable to him, but it was!
He was always very reliable, clean, never cancelled, was polite, courteous, didn't boundary push, always booked 3 to 4 days ahead and never tried to overrun. Any overrunning that happened was of my doing, he is good conversation and he is an easy booking compared to some others that I've had.
We've had this process in place now for 7 months and it's working well. It was a win-win for me, I appreciate that this won't last forever, however, it's working well for me, for now. The only disadvantage I would say is that I've got kind of use to the income that he's providing and I would miss it if he stopped.
The only advice I would give if anyone was contemplating giving a discount would be to agree the terms up front and make them clear, confirm in writing on AW email! Also specify that if they don't come and see you for X number of weeks then the discount stops and it reverts to full price.