Have always charged T & M.
Or my line to a customer is " You tell me how much you want to spend and I'll tell ya how much you'll get for your $$.