The calculated distance (air line) between Prato and Castelfiorentino is approximately 20 miles respectively 32 kilometers.
By car or train, the actual journey to Castelfiorentino is certainly longer, as only the direct route (as the crow flies) between Prato and Castelfiorentino has been calculated here.
Air line (approximately)
32 kilometers
17 nautical miles