If your loan amount is over 200k, take the money out from your 401k is a good option.
Let's put it this way(roughly), you save around $3000 per year on the mortgage by borrowing 20k from the 401k. Is the return is good? Yes.
And also, you will return the money back to your 401k monthly anyway.