I had to do it with one client. My philosophy is one of automation and never doing something twice - the less hours the client needs per unit work done, the better - and the philosophy of some of their managers was the opposite, that you didn't get what you paid for unless people sweated for it. In other words, they incentivised their own workforce and consultants not to automate anything.
So I made a read-only log, shared it with them, and started writing down everything I was doing to make their products. It ended up being really interesting as I never really analysed my development process, all the false tracks you go down for a while before reverting, all the data format changes, type errors you meet, avoiding repetition, documentation, flashes of inspiration, or how waiting for a query to complete breaks your flow... and I think they got a better idea of what is involved in producing stuff (no, it's not "just updating a few graphs" if you went and changed all the definitions and they come from 7 distinct data sources).
A side effect is that they got precisely the hours they paid for.
With other clients, I routinely used to put in a weekend or late nights if things didn't quite work, or if I had an idea for an interesting product that could be helpful to them. With these guys, it was "this is probably going to take me 10 hours. Can you approve these hours?" and 2 weeks later they'd say "OK" and I'd get started only then. They were so hours-driven that when I passed them a new product I did do in my spare time, they refused to even have a meeting to look at it in fear of having to pay for more hours. Quite amazing.