Consider the circumstance where someone works for multiple customers and charges them on an hourly rate. This is pretty common. However, how should an hourly, contractual worker bill their customers when under the rare circumstance that they can do work just once, that is mutually beneficial for multiple customers?
In other words, assume that someone has two customers, A and B. Customer A and B have no relationship with one another. However, after you start working on both projects, you realize that you can consolidate about 20% of the work for both projects. Complete the work once, and 100% (of the 20%) can be mutually shared across both projects?
What is the ethical way of dividing the billing of this work among your customers? The initial, gut response is that you could/should let your customers know about the circumstance and only charge them half time, each. However, not all customers appreciate this model-- they want 100% of your work to belong to them.
For instance, imagine if you are a software engineer and you write freelance code. Some customers want you to write your code, strictly for them. I can understand this, especially if your code is contractually owned and proprietary to your customer. However, this isn't always plausible. There is a big difference between reusing a site layout, database structure or back-end, server code, and sharing a very low-level code base that takes care of simple tasks that your underlying development platform could have included, but hasn't. This is a common circumstance and re-writing the same code is considerably redundant and, frankly, unrealistic.
Another caveat is that the example of two customers, with a split requirement is a bit simple.
Again, take my coding example. You may realize that for a particular set of software projects, you could consolidate similar requirements into one code "framework". Neither customers project will use your framework to the fullness of it's potential. However, there is enough similarity to the two, that putting them together makes sense and, in the long run, could save both customers a bit of time.
What is the ethical way of handling these type of situations? I'm not a freelancer, but I do have to log hours for various, internal companies that I work for. It's not as big of a deal for me to perfectly track this (because all of these companies are owned by the same corporation), however, this is something that I have always questioned. Especially considering that the day may come where I become a freelance worker for these companies and will have to find a way to ethically divide up the work for billing.