diff --git a/Data/Profunctor/Representable.hs b/Data/Profunctor/Representable.hs
--- a/Data/Profunctor/Representable.hs
+++ b/Data/Profunctor/Representable.hs
@@ -6,8 +6,10 @@
 import Data.Functor
 import Data.Functor.Identity
 import Data.Functor.Compose
+import Data.Proxy
 import Data.Profunctor
 import Data.Profunctor.Composition
+import Data.Tagged
 import Control.Comonad
 
 class (Profunctor k, Functor (Rep k)) => RepresentableProfunctor k where
@@ -24,6 +26,11 @@
   type Rep (Cokleisli w) = w
   tabulatePro = Cokleisli
   indexPro = runCokleisli
+
+instance RepresentableProfunctor Tagged where
+  type Rep Tagged = Proxy
+  tabulatePro f = Tagged (f Proxy)
+  indexPro (Tagged a) _ = a
 
 instance Functor f => RepresentableProfunctor (DownStar f) where
   type Rep (DownStar f) = f
diff --git a/representable-profunctors.cabal b/representable-profunctors.cabal
--- a/representable-profunctors.cabal
+++ b/representable-profunctors.cabal
@@ -1,6 +1,6 @@
 name:          representable-profunctors
 category:      Control, Categories
-version:       3.0
+version:       3.1
 license:       BSD3
 cabal-version: >= 1.6
 license-file:  LICENSE
@@ -28,8 +28,9 @@
   build-depends:
     base              >= 4       && < 5,
     comonad           == 3.0.*,
-    profunctors       == 3.0.*,
+    profunctors       == 3.1.*,
     profunctor-extras == 3.0.*,
+    tagged            >= 0.4.4   && < 0.5,
     transformers      >= 0.2     && < 0.4
 
   exposed-modules:
