If you have no rental car, you can go from San Gimignano to Florence via Poggibonsi. You have two alternatives: bus + train combination or bus + bus combination, being the latter most convenient. Go to the tourist information office and buy the bus ticket from San Gimignano to Florence (1h30min, 7€). Bus 130 leaves from Porta San Giovanni and will take you to Poggibonsi in about 25min. There, change to the next bus going to Florence (waiting time is usually about 15 min). In 50min, the bus will leave you right in the center of Florence, next to Santa Maria Novella train station.