While is science class many moons a go, I was told to wash clothes with blood stains in tepid water. It has something to do with the coagulant within the blood. Cold water sets it and warm water dissolves it. The trick is, to have it just warmer than cold and not scorching hot. Worked so far.
In medical school it was not unusual to get blood stains on our coats. We used to use Hydrogen peroxide to get it out, works best on whites as its a bleach.
For home use, I feel vanish works best for me.
Cold water rinse immediately .Wash normally in machine . If any stain remains soak in a nappy soak and back into machine.
When I was a vet nurse we used bleach straight from the bottle on blood stain while wearing our uniform. I don't know how the fabric stood up to it but it is not a good look to greet people with a blood stained uniform.