Most Maine rivers eventually carry water toward the Atlantic Ocean. But four major rivers in northern Maine flow in the opposite compass direction.
The Upper St. John, Allagash, Fish and Aroostook rivers all drain north into the St. John River system, which carries their water into New Brunswick and eventually the Bay of Fundy.
So why do they flow north?
Because rivers flow downhill, and in northern Maine, the landscape slopes toward the St. John River basin.
The four rivers are on the northern side of Maine’s drainage divide. Water that falls there flows toward the St. John rather than into river systems such as the Penobscot and Kennebec, which drain south toward the Atlantic.
That means two raindrops falling only a short distance apart can begin very different journeys. One might eventually reach the Atlantic through a Maine river, while the other flows north into Canada.
The Allagash provides one of the clearest examples.
From Churchill Dam, the Allagash flows about 62 miles northward before joining the St. John River, dropping more than 300 feet along the way.
The landscape that determines that route was shaped in part by glaciers during the Ice Age. Massive continental ice sheets repeatedly covered Maine, reshaping mountains and valleys and altering existing drainage patterns. Those changes helped create the landscape through which Maine’s modern rivers flow.

The Upper St. John is the westernmost of the four, beginning in Somerset County before flowing north and eventually forming part of the Maine-New Brunswick boundary.
The Allagash flows north from Churchill Dam to the St. John. The Fish River and its chain of lakes and connecting waterways drain toward the St. John near Fort Kent. The Aroostook River, the easternmost of the four, flows through northern Maine before crossing into New Brunswick and joining the St. John.
What makes these four rivers unusual is that their water leaves the state through the St. John River system and eventually reaches the Bay of Fundy rather than flowing south toward the Atlantic.


