Miasto leży pomiędzy trzema jeziorami: Zamkowym, Sicieńskim i Frydek, na Pojezierzu Chełmińskim, w centralnym punkcie historycznej ziemi chełmińskiej. Oddalone 31 km na południe od Grudziądza i 43 km na północny wschód od Torunia.
Miejskie uliczki bogate są w kamienice z przełomu XIX i XX wieku.
Zgoda – dawniej budynek Towarzystwa Kredytowego w Rypinie