I fell like it is common, not sure I would say it is typical. I avoid it at all costs. Usually, if I complete the project the and the host company doesn't like it, I don't get any feedback on the code and my time gets mostly wasted. If companies would give some degree of feedback on the code I'd be more into it. "No" isn't the kind of feedback that I value.
I try to stick closer to companies that have a balanced interview process and a smaller live coding challenge, think 20-45 min can really suss out a person's technical level anyways.
Just my $.02