Buying a phone with 32GB (rather than 16GB + 16GB SD card) will typically be more expensive. Separate cards are very inexpensive.
You might be able to put in more than 16GB SD card (depending on the phone) and could end up with a lot more than 32GB (possibly for less cost than a 32GB phone).
SD card can always be transferred to other devices (e.g. if the phone goes up the spout).
The SD card might be slower, but, to be quiet honest, you are unlikely to notice it.
If you intend to install a massive number of apps (such the operating system and the apps break 16gb), then the 32GB approach might be cleaner.
My preference would be the 16GB phone with an add-in.