diff --git a/Web/Routes/Site.hs b/Web/Routes/Site.hs
--- a/Web/Routes/Site.hs
+++ b/Web/Routes/Site.hs
@@ -51,12 +51,14 @@
   fmap f site = site { handleSite = \showFn u -> f (handleSite site showFn u) }
 
 -- | Retrieve the application to handle a given request.
+--
+-- NOTE: use 'decodePathInfo' to convert a 'ByteString' url to a properly decoded list of path segments
 runSite :: Text -- ^ application root, with trailing slash
         -> Site url a
-        -> ByteString -- ^ path info, leading slash stripped
+        -> [Text] -- ^ path info, (call 'decodePathInfo' on path with leading slash stripped)
         -> (Either String a)
 runSite approot site pathInfo =
-    case parsePathSegments site $ decodePathInfo pathInfo of
+    case parsePathSegments site pathInfo of
         (Left errs) -> (Left errs)
         (Right url) -> Right $ handleSite site showFn url
   where
diff --git a/web-routes.cabal b/web-routes.cabal
--- a/web-routes.cabal
+++ b/web-routes.cabal
@@ -1,5 +1,5 @@
 Name:             web-routes
-Version:          0.26.3
+Version:          0.27.1
 License:          BSD3
 License-File:     LICENSE
 Author:           jeremy@seereason.com
