Three were killed instantly and another died on the way to the hospital after the driver lost control of the bus, which was going toward Cao Bang City, at around 6 a.m.
Ten others were severely injured as the bus went off the road and plunged into a pass 30 meters below.
The bus with sleeper berths was carrying 30 people.
Medical personnel and firefighters were rushed to the accident site. By 9 a.m., all bodies and injured passengers were sent to the Cao Bang Hospital, said a local official.
Police are investigating the incident.
Traffic accidents kill thousands of people in Vietnam every year. More than 20,000 traffic accidents occurred last year, killing nearly 8,300 people and injuring over 17,000 across the country, according to the National Traffic Safety Committee.