The ship left Jacksonville, Florida, in late September 2015. It was headed to Puerto Rico when it crossed paths with Hurricane Joaquin near the Bahamas.
The report says the captain decided to take the vessel's normal route, a straight line between its two normal ports, despite warnings of the strengthening storm.
Joaquin was upgraded to a Category 3 hurricane after the El Faro left port.
Hours of audio recording from the ship's black box was recovered and transcribed. Before the ship sank, the captain was recorded saying he was "sleepin' like a baby" and that "there is nothing bad about this ride." He compared it to "every day in Alaska."
But after the ship took on water and faced winds well over 100 mph, the captain ordered the crew to abandon it. The ship was near the eye of the storm; all 33 crew members died.
The report also notes TOTE Maritime Inc., which owned the El Faro, violated safety rules relating to crew training and workload ahead of the fatal voyage. Some members of the crew understood very little English and hadn't received proper safety training.
The company called the report "another piece of this sacred obligation that everyone who works upon the sea must study and embrace."