Hi,
This is mostly possible with an hour report. You can surface actual hours logged and associated revenue. With an appropriate set of groupings, you would be able to aggregate the total hours/revenue by month and client.
You won't however, be able to surface planned hours in this type of report. I'm not sure that it's possible to surface planned + actual + revenue and group that information by month in a meaningful way. This type of information would only be available at the task/project level and you would only be able to group based on completion dates, not when hours were recorded.
Have a go with creating an hour report and see if that gives you the information you need. Shout out if you have any questions on how to achieve this.
Best Regards,
Rich.