American Whitewater

Montana Navigability Report

Summary

Montana statutes allow public use of streams that are capable of being used for recreational purposes. The public can fish, hunt, swim, float and wade in streams satisfying this test. The public also has a right of portage in these streams.

State Test of Navigability

Under the Montana constitution, all waters of the state are owned by the state for the use of its people,1) and this provision has been interpreted as establishing a public trust over the waters of the state.2) Montana has adopted a statutory recreational use test to define navigability for purposes of establishing the public trust. The statute states, with limitations, that “all surface waters that are capable of recreational use may be so used by the public without regard to the ownership of the land underlying the waters.”3) Use of the body of water is permitted up to the high water mark.4)

The Montana Department of Fish, Wildlife and Parks has published a brochure which includes a preliminary list of some of the waters that have been deemed navigable.5)

Extent of Public Rights in Navigable and Non-Navigable Rivers

The right to use waters that satisfy the state recreational test includes recreational uses of the water for fishing, hunting, swimming, floating in small craft or other floatation devices, craft propelled by oar or paddle, other water-related pleasure activities, and related unavoidable or incidental uses.6) This right extends to the high water mark, but only as is necessary to use the water itself; use of the bed and banks must be of minimal impact.7) In a 2002 case, the court ruled that wading is an incidental touching of the streambed that is permissible as a de minimis intrusion on private property.8)

The right to use the water for recreational use also includes the right to use the underlying and adjoining real estate essential to the enjoyment of the public's ownership of the water.9) This includes a right of portage around barriers in the least intrusive manner possible,10) but this right does not include camping on privately-owned banks without the owner's permission.11) The Montana legislature went so far as to pass a statute that required private landowners to provide a portage route around artificial barriers, but the Montana Supreme Court later struck this provision.12) The use of a dry streambed is not permitted, 13) unless other parts of the stream had water capable of recreational use and the use of the dry streambed was to portage around a barrier.

A prescriptive easement is not acquired for recreational use of surface waters under the statute.14)

Miscellaneous

A Montana Attorney General's Opinion has clarified that the public does have the right to access rivers in Montana from bridges, bridge abutments, and bridge/road easements.15)

1) Mont. Const. art IX § 3(3).
2) Montana Coalition for Stream Access v. Curran, 682 P.2d 163, 168 (Mont. 1984).
3) Mont. Code Ann. § 23-2-302 (1997).
4) Montana Coalition for Stream Access, 682 P.2d at 172.
5) Stream Access in Montana. Rights and Responsibilities of Landowners and Recreationists. http://fwp.mt.gov/fishing/fishingmontana/access.html.
6) Mont. Code Ann. § 23-2-301.
7) Galt v. State of Montana Department of Fish, Wildlife, and Parks, 731 P.2d 912, 915 (Mont. 1987).
8) Madison v. Graham, 316 F.3d 867 (9th Cir. 2002
9) Galt, 731 P.2d at 915
10) Curran, 682 P.2d at 172; Mont. Code Ann. § 23-2-311.
11) Galt, 731 P.2d at 915.
12) Id. at 914.
13) Mont. Code Ann. § 23-3-302.
14) Mont. Code Ann. § 23-2-322
15) 48 Op. Att’y Gen. 13 (2000).
7.4.3PHP Version551msRequest Duration6MBMemory UsageGET content/{url}Route
    • Booting (50.9ms)
    • Application (501ms)
    • 1 x Application (90.77%)
      501ms
      1 x Booting (9.23%)
      50.90ms
      14 templates were rendered
      • legacy.views.container-view (resources/views/legacy/views/container-view.blade.php)6blade
        Params
        0
        components
        1
        controls
        2
        id
        3
        class
        4
        title
        5
        formRenderService
      • legacy.views.container-view (resources/views/legacy/views/container-view.blade.php)6blade
        Params
        0
        components
        1
        controls
        2
        id
        3
        class
        4
        title
        5
        formRenderService
      • app::layout.gadget (resources/views/layout/gadget.blade.php)2blade
        Params
        0
        contents
        1
        formRenderService
      • layout.columnstyle.one (resources/views/layout/columnstyle/one.blade.php)7blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
      • layout.columnstyle.componentstack (resources/views/layout/columnstyle/componentstack.blade.php)9blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
        7
        stack
        8
        component
      • layout.main (resources/views/layout/main.blade.php)7blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
      • layout._headers (resources/views/layout/_headers.blade.php)7blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
      • layout.header (resources/views/layout/header.blade.php)7blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
      • layout._scripts (resources/views/layout/_scripts.blade.php)7blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
      • layout.navigation (resources/views/layout/navigation.blade.php)8blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
        7
        menu
      • includes.alert.membership (resources/views/includes/alert/membership.blade.php)17blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
        7
        menu
        8
        searchurl
        9
        loginurl
        10
        logouturl
        11
        __currentLoopData
        12
        child
        13
        loop
        14
        otherchild
        15
        shouldNotifyUser
        16
        user
      • navigation.menu.static (resources/views/navigation/menu/static.blade.php)15blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
        7
        menu
        8
        searchurl
        9
        loginurl
        10
        logouturl
        11
        __currentLoopData
        12
        child
        13
        loop
        14
        otherchild
      • includes.footer (resources/views/includes/footer.blade.php)8blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
        7
        menu
      • layout.pagemap (resources/views/layout/pagemap.blade.php)7blade
        Params
        0
        obLevel
        1
        __env
        2
        app
        3
        errors
        4
        contents
        5
        formRenderService
        6
        layout
      uri
      GET content/{url}
      middleware
      web
      controller
      App\Http\Controllers\Wh2oController@content
      namespace
      App\Http\Controllers
      where
      as
      generated::Os9R4mqMKRF5ktoI
      file
      app/Http/Controllers/Wh2oController.php:34-68
      4 statements were executed, 4 of which were duplicated, 0 unique2.03ms
      • select * from "articles" where ("id" = '-SecurityGadget-explain' or "short_name" = '-SecurityGadget-explain') and "articles"."deleted_at" is null and "articles"."is_final" = 'true' limit 1
        760μs/app/Legacy/Repositories/NewsInfo.php:61wh2o
        Metadata
        Bindings
        • 0. -SecurityGadget-explain
        • 1. -SecurityGadget-explain
        • 2. true
        Backtrace
        • 15. /app/Legacy/Repositories/NewsInfo.php:61
        • 16. /code/wh2o/ArticleGadget.inc:128
        • 17. /code/wh2o/Page1.inc:930
        • 18. /code/wh2o/Page1.inc:1019
        • 19. /code/wh2o/SecurityGadget.inc:150
      • select * from "articles" where "short_name" = '-SecurityGadget-explain' limit 1
        430μs/app/Legacy/Repositories/NewsInfo.php:64wh2o
        Metadata
        Bindings
        • 0. -SecurityGadget-explain
        Backtrace
        • 15. /app/Legacy/Repositories/NewsInfo.php:64
        • 16. /code/wh2o/ArticleGadget.inc:128
        • 17. /code/wh2o/Page1.inc:930
        • 18. /code/wh2o/Page1.inc:1019
        • 19. /code/wh2o/SecurityGadget.inc:150
      • select * from "articles" where ("id" = '-SecurityGadget-explain' or "short_name" = '-SecurityGadget-explain') and "articles"."deleted_at" is null and "articles"."is_final" = 'true' limit 1
        470μs/app/Legacy/Repositories/NewsInfo.php:61wh2o
        Metadata
        Bindings
        • 0. -SecurityGadget-explain
        • 1. -SecurityGadget-explain
        • 2. true
        Backtrace
        • 15. /app/Legacy/Repositories/NewsInfo.php:61
        • 16. /code/wh2o/ArticleGadget.inc:128
        • 17. /code/wh2o/Page1.inc:930
        • 18. /code/wh2o/Page1.inc:1019
        • 19. /code/wh2o/SecurityGadget.inc:150
      • select * from "articles" where "short_name" = '-SecurityGadget-explain' limit 1
        370μs/app/Legacy/Repositories/NewsInfo.php:64wh2o
        Metadata
        Bindings
        • 0. -SecurityGadget-explain
        Backtrace
        • 15. /app/Legacy/Repositories/NewsInfo.php:64
        • 16. /code/wh2o/ArticleGadget.inc:128
        • 17. /code/wh2o/Page1.inc:930
        • 18. /code/wh2o/Page1.inc:1019
        • 19. /code/wh2o/SecurityGadget.inc:150
          _token
          UN4JXYMGKvUOdqc2ulqmYoaCnbuF9Uu9v8dNlze5
          page
          array:1 [ "count" => 9 ]
          PHPDEBUGBAR_STACK_DATA
          []
          _previous
          array:1 [ "url" => "https://beta.americanwhitewater.org/wiki/lib/exe/js.php?edit=0&write=0" ]
          _flash
          array:2 [ "old" => [] "new" => [] ]
          path_info
          /content/Wiki/access:mt
          status_code
          200
          
          status_text
          OK
          format
          html
          content_type
          text/html; charset=UTF-8
          request_query
          []
          
          request_request
          []
          
          request_headers
          0 of 0
          array:16 [ "cookie" => array:1 [ 0 => "PHPSESSID=g80p506avi1ida30va5vbftblu; XSRF-TOKEN=eyJpdiI6IjRLeWJMQVZiOGEveGNLWDVCRGQ2QWc9PSIsInZhbHVlIjoiKzA2NHRLbFpSZHhmdkdsSFpYMG9BcGNuV1cyek0xYzFZRjFZYjBhSXFwWVVKQnFzNFA5c3RPUFAzQTdCZlZHbmFOMVcwTU9Ka0Z0SlVQM0dwanc2VGpvVlhsNWkvVU4wWE14RXJtQkNUeGhUMmxSbTcyNWNNcDJwNjdzQlBJcTQiLCJtYWMiOiJmN2VjNmFjMmUzYjM4MjIxMzA1MGNiN2Y0ODNhYWQ2ZGUyNWQzOTk4MzQzNjFiYTMwN2ZkOTI5NGZmZmEyOTg2In0%3D; americanwhitewater_session=nNnlFdz9sxeKI03CslT2KNpL64zsVIG8h65ZD9CzPHPSESSID=g80p506avi1ida30va5vbftblu; XSRF-TOKEN=eyJpdiI6IjRLeWJMQVZiOGEveGNLWDVCRGQ2QWc9PSIsInZhbHVlIjoiKzA2NHRLbFpSZHhmdkdsSFpYMG9BcGNuV1cyek0xYzFZRjFZYjBhSXF" ] "priority" => array:1 [ 0 => "u=0, i" ] "accept-encoding" => array:1 [ 0 => "gzip, deflate, br, zstd" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "host" => array:1 [ 0 => "beta.americanwhitewater.org" ] ]
          request_server
          0 of 0
          array:43 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_COOKIE" => "PHPSESSID=g80p506avi1ida30va5vbftblu; XSRF-TOKEN=eyJpdiI6IjRLeWJMQVZiOGEveGNLWDVCRGQ2QWc9PSIsInZhbHVlIjoiKzA2NHRLbFpSZHhmdkdsSFpYMG9BcGNuV1cyek0xYzFZRjFZYjBhSXFwWVVKQnFzNFA5c3RPUFAzQTdCZlZHbmFOMVcwTU9Ka0Z0SlVQM0dwanc2VGpvVlhsNWkvVU4wWE14RXJtQkNUeGhUMmxSbTcyNWNNcDJwNjdzQlBJcTQiLCJtYWMiOiJmN2VjNmFjMmUzYjM4MjIxMzA1MGNiN2Y0ODNhYWQ2ZGUyNWQzOTk4MzQzNjFiYTMwN2ZkOTI5NGZmZmEyOTg2In0%3D; americanwhitewater_session=nNnlFdz9sxeKI03CslT2KNpL64zsVIG8h65ZD9CzPHPSESSID=g80p506avi1ida30va5vbftblu; XSRF-TOKEN=eyJpdiI6IjRLeWJMQVZiOGEveGNLWDVCRGQ2QWc9PSIsInZhbHVlIjoiKzA2NHRLbFpSZHhmdkdsSFpYMG9BcGNuV1cyek0xYzFZRjFZYjBhSXF" "HTTP_PRIORITY" => "u=0, i" "HTTP_ACCEPT_ENCODING" => "gzip, deflate, br, zstd" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_HOST" => "beta.americanwhitewater.org" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "beta.americanwhitewater.org" "SERVER_PORT" => "443" "SERVER_ADDR" => "172.31.18.125" "REMOTE_PORT" => "36108" "REMOTE_ADDR" => "18.222.188.129" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => true "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/opt/americanwhitewater.org/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/content/Wiki/access:mt" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "PHP_VALUE" => "post_max_size=20M" "SCRIPT_FILENAME" => "/opt/americanwhitewater.org/public/index.php" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1743712500.9087 "REQUEST_TIME" => 1743712500 ]
          request_cookies
          0 of 0
          array:3 [ "PHPSESSID" => null "XSRF-TOKEN" => "UN4JXYMGKvUOdqc2ulqmYoaCnbuF9Uu9v8dNlze5" "americanwhitewater_session" => null ]
          response_headers
          0 of 0
          array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Thu, 03 Apr 2025 20:35:01 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6InNsM1hJZk1LRk03RVlmVnBqWWRLclE9PSIsInZhbHVlIjoiQUZVZVpPbFhYaWdSY1NMYkNiMk1mUWphUGtaNWljZ2ErYnJBZndLSFlJRVJDMjEyYi93YVQ4QUxPT0t3eDVMMXlZcEw4UG5qVkVacEcwc084OEJabktpUVJTK1luSnpQbGVnMXFibzVlUGVYaDlIVG1nazNmUjhGOUc3ZGhGTDYiLCJtYWMiOiIwMmNjMmQ3MDRhOTc3YTE4Y2QwOGU2ZmQ1MDQ0NGJhYzc1OTQwYzk5OTI3MzUzOGM5OWE2YzUzNDFhNmQ2NmM4In0%3D; expires=Thu, 03-Apr-2025 22:35:01 GMT; Max-Age=7200; path=/XSRF-TOKEN=eyJpdiI6InNsM1hJZk1LRk03RVlmVnBqWWRLclE9PSIsInZhbHVlIjoiQUZVZVpPbFhYaWdSY1NMYkNiMk1mUWphUGtaNWljZ2ErYnJBZndLSFlJRVJDMjEyYi93YVQ4QUxPT0t3eDVMMXlZcEw4U" 1 => "DWa976077ab53ea1a0f12b663e732b73c0=eyJpdiI6IlZMeUhWZmtoSHVtSkN0UkVPeTlXQXc9PSIsInZhbHVlIjoiWjgwNEFwcEtFL2dyckI1dTFTQ2NoUzU4TE9heW9CSFYvYWFIbTYrSUxPdGRxSWo0SUFtZ0h5OGRicmZBaUJ6UiIsIm1hYyI6ImFhNWYzMjU1YjRjZDVlYjA3OWQzY2I3NTYwNGEwYmY3OTVjYjM3MjAyOGE4NmVkOTc2MTc0YmVjYzJiYzA1ZTgifQ%3D%3D; expires=Thu, 03-Apr-2025 20:34:01 GMT; Max-Age=0; path=/; httponlyDWa976077ab53ea1a0f12b663e732b73c0=eyJpdiI6IlZMeUhWZmtoSHVtSkN0UkVPeTlXQXc9PSIsInZhbHVlIjoiWjgwNEFwcEtFL2dyckI1dTFTQ2NoUzU4TE9heW9CSFYvYWFIbTYrSUxPdGRxSWo0SUFtZ" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6InNsM1hJZk1LRk03RVlmVnBqWWRLclE9PSIsInZhbHVlIjoiQUZVZVpPbFhYaWdSY1NMYkNiMk1mUWphUGtaNWljZ2ErYnJBZndLSFlJRVJDMjEyYi93YVQ4QUxPT0t3eDVMMXlZcEw4UG5qVkVacEcwc084OEJabktpUVJTK1luSnpQbGVnMXFibzVlUGVYaDlIVG1nazNmUjhGOUc3ZGhGTDYiLCJtYWMiOiIwMmNjMmQ3MDRhOTc3YTE4Y2QwOGU2ZmQ1MDQ0NGJhYzc1OTQwYzk5OTI3MzUzOGM5OWE2YzUzNDFhNmQ2NmM4In0%3D; expires=Thu, 03-Apr-2025 22:35:01 GMT; path=/XSRF-TOKEN=eyJpdiI6InNsM1hJZk1LRk03RVlmVnBqWWRLclE9PSIsInZhbHVlIjoiQUZVZVpPbFhYaWdSY1NMYkNiMk1mUWphUGtaNWljZ2ErYnJBZndLSFlJRVJDMjEyYi93YVQ4QUxPT0t3eDVMMXlZcEw4U" 1 => "DWa976077ab53ea1a0f12b663e732b73c0=eyJpdiI6IlZMeUhWZmtoSHVtSkN0UkVPeTlXQXc9PSIsInZhbHVlIjoiWjgwNEFwcEtFL2dyckI1dTFTQ2NoUzU4TE9heW9CSFYvYWFIbTYrSUxPdGRxSWo0SUFtZ0h5OGRicmZBaUJ6UiIsIm1hYyI6ImFhNWYzMjU1YjRjZDVlYjA3OWQzY2I3NTYwNGEwYmY3OTVjYjM3MjAyOGE4NmVkOTc2MTc0YmVjYzJiYzA1ZTgifQ%3D%3D; expires=Thu, 03-Apr-2025 20:34:01 GMT; path=/; httponlyDWa976077ab53ea1a0f12b663e732b73c0=eyJpdiI6IlZMeUhWZmtoSHVtSkN0UkVPeTlXQXc9PSIsInZhbHVlIjoiWjgwNEFwcEtFL2dyckI1dTFTQ2NoUzU4TE9heW9CSFYvYWFIbTYrSUxPdGRxSWo0SUFtZ" ] ]
          session_attributes
          0 of 0
          array:5 [ "_token" => "UN4JXYMGKvUOdqc2ulqmYoaCnbuF9Uu9v8dNlze5" "page" => array:1 [ "count" => 9 ] "PHPDEBUGBAR_STACK_DATA" => [] "_previous" => array:1 [ "url" => "https://beta.americanwhitewater.org/wiki/lib/exe/js.php?edit=0&write=0" ] "_flash" => array:2 [ "old" => [] "new" => [] ] ]