An image of one of the victims - a young boy lying face down on the beach - has sparked an international outcry over the human cost of the crisis.
The picture, released by a Turkish news agency, is trending worldwide on Twitter under the #KiyiyaVuranInsanlik ("humanity washed ashore") hashtag.
Thousands of migrants have died this year trying to reach Europe by sea.
Warning: This article contains a distressing image
The Turkish coastguard said the migrants had set off from Turkey's Bodrum peninsula for the Greek island of Kos in the early hours of Wednesday morning, but the two boats they were in sank shortly afterwards.
Twelve bodies, including five children, were recovered. Of 23 people on board the two boats, only nine people are thought to have survived - some made it to shore with life jackets.
The image of the young boy, shown wearing a red T-shirt and lying face-down on the beach near Bodrum, was published shortly after the bodies washed up on shore at about 06:00 local time.
Turkish news agency Dogan said he and the rest of the group were Syrians from the besieged town of Kobane who had fled to Turkey last year to escape advancing militants from the Islamic State (IS) group.
Turkish media describe relatives breaking down as they identified the bodies.
The pictured boy is reported to be three-year-old Aylan, who drowned along with his five-year-old brother Galip and their mother, Rihan. Their father, Abdullah Kurdi, survived.
He and his family reportedly sought asylum in Canada before attempting the journey - but their refugee application was turned down.
Teema Kurdi, Abdullah's sister who lives in Vancouver, told Canada's National Post newspaper that she had been trying to help them leave the Middle East.
Abdullah is reported to have been kidnapped and tortured during the siege of Kobane by Islamic State or another jihadist group.
"I was trying to sponsor them [...] but we couldn't get them out, and that is why they went in the boat," she said.
The family is believed to have no other option because Syrian Kurdish refugees in Turkey find it almost impossible to get an exit visa unless they have a passport, which few do.
A local fisherman who discovered the bodies on the shore said: "I came to the sea and I was scared. My heart is broken."
According to the BBC's Fergal Keane, the beach where the bodies were found has become suddenly notorious, but on any day there you will find the debris - deflated dinghy parts, abandoned belongings - of the desperate.
The BBC has chosen to publish only one photograph of Aylan, in which he is being carried by a Turkish police officer and is unidentifiable.
However, several news organisations have published more graphic images of the boy.
UK newspaper The Independent said it had decided to use the images on its website because "among the often glib words about the 'ongoing migrant crisis', it is all too easy to forget the reality of the desperate situation facing many refugees".
Despite the reaction to the image online, there has been little reaction from European leaders.
The dead boy's father desperately tried to save his family, his aunt Teema Kurdi told Canadian journalist Terry Glavin.
"He made it, but his wife didn't and there's a terrible story he told about swimming from one to the other," Mr Glavin said in an interview with BBC Radio 5 live.
Abdullah found both of his sons and his wife dead  - although initially he was not able to recognise her because her body had been so badly damaged by the rocks.
Justin Forsyth, chief executive of the charity Save the Children, said the "tragic image" was a reminder of "the dangers children and families are taking in search of a better life".
"This child's plight should concentrate minds and force the EU to come together and agree to a plan to tackle the refugee crisis," he added.
Some 350,000 migrants have made the perilous journey to reach Europe's shores since January this year, according to figures released by the International Organization for Migration (IOM) on Tuesday.
The IOM said more than 2,600 migrants had drowned trying to cross the Mediterranean in the same period.
Earlier this week, the Turkish government said its coastguard had rescued over 42,000 migrants in the Aegean Sea in the first five months of 2015 and more than 2,160 in the last week alone.
In photos: One day across destination Europe
Five obstacles to an EU migrants deal
The migrants who risk everything for a better life
At least 12 Syrians trying to reach Greece have drowned off Turkey after the boats they were travelling in sank.