diff --git a/Data/Tagset/Positional.hs b/Data/Tagset/Positional.hs
--- a/Data/Tagset/Positional.hs
+++ b/Data/Tagset/Positional.hs
@@ -79,6 +79,10 @@
     , atts  :: M.Map Attr AttrVal
     } deriving (Show, Read, Eq, Ord)
 
+instance Binary Tag where
+    put Tag{..} = put pos >> put atts
+    get = Tag <$> get <*> get
+
 -- | Expand optional attributes of the tag.
 expand :: Tagset -> Tag -> [Tag]
 expand tagset tag = do
diff --git a/tagset-positional.cabal b/tagset-positional.cabal
--- a/tagset-positional.cabal
+++ b/tagset-positional.cabal
@@ -1,5 +1,5 @@
 name:               tagset-positional
-version:            0.2.0
+version:            0.3.0
 synopsis:           Positional tags and tagsets
 description:
     The library provides printing and parsing functions for positional
