The river's headwaters are at Byram Lake in Westchester County, New York, at an elevation of , and flow southward, crossing the New York-Connecticut border and eventually flowing into Long Island Sound at Port Chester Harbor.
The river begins its course at Byram Lake in Westchester County, New York, situated at a height of , then flows southward through both New York and Connecticut before ultimately reaching Long Island Sound at Port Chester Harbor.