The Pudding River Basin's complex of headwater creeks originates from the western edge of the Cascade Mountains along a snowpack-limited rigdeline (i.e. no glaciers are present) that forms a critical linkage from the Mount Hood National Forest and Table Rock Wilderness to Silver Falls State Park and the rolling Waldo Hills east of Salem. Peak ridgeline elevations vary from . After emerging from the Cascade Mountain foothills of the Panther Rock Ridge and its unique forested upper-elevation wetlands and lakes, the key tributaries of the watershed like ecologically-important Butte Creek converge near Woodburn into the meandering Pudding River. Passing through and within the Pudding River Valley, the numerous subwatersheds of the Pudding Basin represent a vital part of fertile agricultural lands of the Lower Willamette Valley sub-basin. Two forks of the Pudding join between the cities of Silverton and Mt. Angel, at , as the river continues its course northward where it receives Abiqua Creek from the right at about northwest of Silverton. North of Mt. Angel, Butte Creek, which comes down from the Cascade Range foothills past Scotts Mills, empties into the Pudding River at . The river continues northward past the town of Aurora. For most of its course, Butte Creek and the Lower Pudding River mainstem defines the boundary between Marion and Clackamas Counties.