In Savages best friends Chon (Taylor Kitsch) and Ben (Aaron Johnson) are marijuana growers living in Laguna Beach, California. Chon, a former Navy SEAL, smuggled the seeds for the plants out of Afghanistan. These seeds yielded a particularly potent strain of marijuana that soon developed a wide customer base and made Chon and Ben very wealthy. The two are in a polyamorous relationship with O (Blake Lively) as a girlfriend.
While Ben(Savages) is doing charity work overseas, Chon and O receive a video from cartel enforcer Lado
(Benicio del Toro), a man they do not know. The video shows several severed heads and a chainsaw, leading them to worry about Ben, who they fear is one of the victims. However, Ben returns safely the next day, and Chon and Ben go to meet with the Mexican cartel. After refusing the cartel's offer for a partnership, Chon and Ben make plans with O to leave and go to Indonesia for a year, not telling her that they are fleeing the cartel.
Chon and Ben(Savages) speak to corrupt DEA agent Dennis (John Travolta) who urges them to partner with the cartel. O, meanwhile, is kidnapped by Lado and several members of the cartel. Chon and Ben are notified of O's kidnapping via a Skype call from cartel leader Elena (Salma Hayek), who threatens to harm O before again urging the two to partner with the cartel.
Chon and Ben speak with Dennis about the situation, but the conversation turns sour, with Chon stabbing Dennis in the hand and punching him in the face. After Dennis angrily leaves, Chon and Ben decide to retaliate. With help from Chon's Navy SEAL friends, the duo attacks a cartel truck, killing seven of Elena's men. The duo decides to frame Alex (Demián Bichir) for the murders. With help from Dennis, they falsify the evidence and give it to Lado, who tortures the man before forcing Ben to immolate him. While being tortured, the man begs for his life "On the head of Magda", revealing to Chon and Ben that Elena's daughter is still alive.
O(Savages) has been kept in horrible living conditions while asking to speak to someone. Elena, feeling sorry for her, allows her to contact her mother. While in captivity and after being drugged, Lado rapes O and records it. Elena later brings her to her estate to have someone to talk to.
Meanwhile, Ben and Chon bribe Dennis for information on Magda (Sandra Echeverria), ultimately paying him $3 million for the information and the name of his snitch in Elena's cartel. After kidnapping Magda, Ben and Chon skype Elena once more, establishing that they are now in control. With Elena at their mercy, the two arrange a meeting, at which point both O and Magda will be released.
The exchange is set to occur in the middle of the desert, with snipers from both sides prepared to fire. Elena requests to know the identity of the man who revealed the location of her daughter, and Chon reveals that it was Lado. Elena attempts to kill Lado, but he shoots her first. An intense shootout erupts, with Chon being shot several times. Lado is shot in the back by Ben, but manages to shoot Ben in the neck before being killed by O. With Ben mortally wounded, Chon injects him, himself, and O with a fatal overdose, so the three can die together.
It is then revealed that this sequence is how O(Savages) feared the events would transpire. In reality, Lado steals Elena's car and drives off as DEA agents arrive, led by Dennis. Everyone at the meeting is arrested, but since Ben possesses incriminating information on Dennis, Dennis names Ben and Chon as his informants for the past six years, leading to them being released from jail. Ben, Chon and O leave the country together and live "like savages" in Indonesia(Savages).