Awalnya pelabuhan di Batavia, juga kota-kota lain di sepanjang pantai utara Jawa, adalah pelabuhan alami. Kapal kecil masuk ke mulut sungai dan ditambatkan di depan kota. Dermaga dibangun dari pantai ke laut dengan menjaga kanal pelabuhan, misalnya kanal Sunda Kelapa, tetap cukup dalam untuk perahu kecil.