"We hope they're alive," said Elee Erice, a spokeswoman for U.S. Customs and Border Protection. "We're searching for them."
The boat got into trouble at around 7:20 a.m., authorities said. A bystander spotted the vessel in distress and called officials.
Shortly after, several people on the boat jumped into the choppy, aquamarine water. Coast Guard officials didn't know if the people jumped because the vessel was in trouble or because they saw authorities coming.
Miami-Dade Fire Rescue pulled several people out of the water, including three people who drowned. Their bodies were brought ashore in a rescue boat, then whisked away by the county medical examiner's office.
Authorities didn't release the nationality, age or gender of the victims.
Authorities gave few clues about what happened aboard the gray vessel, which beached itself a few hundred yards off a beach popular with windsurfers and within sight of Fisher Island, one of the nation's richest ZIP codes.
Federal and state officials also refused to comment on whether it was a failed smuggling attempt.
It wasn't clear how the boat ran aground, but it did appear that it was not inside the channel markers used by other watercraft. The boat, 40 to 45 feet long, bobbed up and down the white-capped waves.
Coast Guard Capt. James Fitton said seven people were discovered on board and another several others were plucked from the water. Fourteen were placed aboard a Coast Guard cutter, while several others were taken to a Customs and Border Protection office for questioning. Some were found dazed and wandering on the property of a nearby sewage treatment plant; three were taken to local hospitals and a handful were found late in the day.