The twister was part of a series of powerful storms with damaging winds that blew through southern and central New Jersey.
The storm that hit Stafford Township was rotating, a central characteristic of tornadoes, said Walter Drag, a meteorologist with the National Weather Service. Inspectors were sent to the scene to confirm whether it was a tornado by studying damage on the ground.
That confirmation came Tuesday night.
It was not immediately clear how much damage the storm caused in Stafford, an Ocean County municipality through which thousands of vacationers pass each year on their way to and from Long Beach Island. But power lines were knocked down, traffic lights knocked out and roads flooded.
The weather service had issued a tornado warning for the storm as it crossed Harvey Cedars and Barnegat Light on the island but canceled it right around the time the storm reached Stafford.
"We had numerous storms that had rotation," Drag said. "There were numerous cells. It was a tough couple hours out there."
The storm that hit Stafford was one of a line of powerful storms with damaging winds that raked southern and central New Jersey. Drag said the storms moved from east to west across Salem and Gloucester counties, touching part of Camden County as well.
The storms left thousands of New Jersey residents without power after dumping 2 inches or more of rain. Flooding was reported in Middletown, Long Branch, Neptune, Wall Township, Ocean Township, Deal, Little Egg Harbor Township, Deptford, Paulsboro, Gloucester City, Woodbury and Lindenwold.
They even interfered with New Jersey's special primary election for a U.S. Senate seat, which was being held Tuesday. Some voting booths in Burlington County had to be moved when water seeped into polling places, and roads in numerous towns were impassable because of flooding.
Shortly before 1 p.m., many of the strongest storms were headed out to sea. The weather service canceled a special marine warning just after 12:30 p.m.
But a flash flood warning remained in place for Mercer County and southern Hunterdon County due to small streams that have overflowed their banks.