Thanks for putting the implementation caveat up front. The absolute times will look different on native bcrypt, but the four-times jump between cost 10 and 12 should still hold. The useful takeaway for me is that "just raise the cost" is a product decision, not only a security one: two seconds per login at cost 14 is something a person would feel. If someone repeats the test, timing a few concurrent hashes would be a good next step, since a login endpoint rarely runs completely alone.