There's also different philosophies about which bits of overhead gets paid by material markup, and which bits get built into the labour charge.
I personally think most contractors, charge too low for labour and depend on the materials mark-up to make up for it. Because everybody asks what your hourly rate is, and almost nobody asks what your mark-up is.
The thing is, most contractors don't realize that's what they're doing. They don't know all their numbers, we guesstimate a lot... As long as the total works out, we don't even realize how messed-up our estimating systems are.
So you CAN probably save yourself some money, by supplying some of the materials. It's pretty easy to argue "why should I pay a markup on something I bought?"
But you will, in fact, probably be cheating your contractor if you do that.
2 other thoughts:
- you won't get a faucet at the same price a plumber will; the difference might even be as large as his mark-up.
- are you expecting him to warranty the installation? are you expecting him to replace it if he breaks it while installing it? Because his risk, in both cases, is what that overhead is supposed to be there for.