A 17-year-old got into the cab driven by a 50-year-old man and got off at 19th and De Haro streets around 10:30 p.m., police said.
The teen said he did not have the cab fare and gave the driver his cellphone as collateral while he went into a home to supposedly get money, police said.
The suspect returned to the cab a few minutes later without the money and demanded his phone back. When the driver refused, the suspect stabbed the driver in the side of the neck.
The teen old ran away, but responding officers found him and arrested him. His name is not being released because he is a juvenile.
The taxi driver was taken to San Francisco General Hospital with injuries not considered life threatening, police said.