diff --git a/prometheus.cabal b/prometheus.cabal
--- a/prometheus.cabal
+++ b/prometheus.cabal
@@ -1,5 +1,5 @@
 name:                prometheus
-version:             0.1.0.1
+version:             0.1.0.2
 synopsis:            Prometheus Haskell Client
 description:         Idiomatic Haskell client for Prometheus.io monitoring.
 homepage:            http://github.com/LukeHoersten/prometheus#readme
diff --git a/src/System/Metrics/Prometheus/Encode/MetricId.hs b/src/System/Metrics/Prometheus/Encode/MetricId.hs
--- a/src/System/Metrics/Prometheus/Encode/MetricId.hs
+++ b/src/System/Metrics/Prometheus/Encode/MetricId.hs
@@ -17,8 +17,8 @@
 
 encodeHeader :: MetricId -> MetricSample -> Builder
 encodeHeader mid sample
-    =  "# HELP " <> nm <> space <> "help" <> newline
-    <> "# TYPE " <> nm <> space <> encodeSampleType sample
+    = "# TYPE " <> nm <> space <> encodeSampleType sample
+    -- <> "# HELP " <> nm <> space <> "help" <> newline <>
   where nm = encodeName (name mid)
 
 
@@ -46,7 +46,7 @@
 
 
 encodeLabel :: (Text, Text) -> Builder
-encodeLabel (key, value) = text key <> equals <> text value
+encodeLabel (key, value) = text key <> equals <> quote <> text value <> quote
 
 
 text :: Text -> Builder
@@ -75,3 +75,7 @@
 
 equals :: Builder
 equals = char8 '='
+
+
+quote :: Builder
+quote = char8 '"'
diff --git a/src/System/Metrics/Prometheus/MetricId.hs b/src/System/Metrics/Prometheus/MetricId.hs
--- a/src/System/Metrics/Prometheus/MetricId.hs
+++ b/src/System/Metrics/Prometheus/MetricId.hs
@@ -1,12 +1,15 @@
+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
+
 module System.Metrics.Prometheus.MetricId where
 
-import           Data.Map  (Map)
-import qualified Data.Map  as Map
-import           Data.Text (Text)
+import           Data.Map    (Map)
+import qualified Data.Map    as Map
+import           Data.String (IsString)
+import           Data.Text   (Text)
 
 
-newtype Name = Name { unName :: Text } deriving (Show, Eq, Ord)
-newtype Labels = Labels { unLabels :: Map Text Text } deriving (Show, Eq, Ord)
+newtype Name = Name { unName :: Text } deriving (Show, Eq, Ord, IsString, Monoid)
+newtype Labels = Labels { unLabels :: Map Text Text } deriving (Show, Eq, Ord, Monoid)
 
 
 data MetricId =
@@ -18,3 +21,7 @@
 
 addLabel :: Text -> Text -> Labels -> Labels
 addLabel key val = Labels . Map.insert key val . unLabels
+
+
+fromList :: [(Text, Text)] -> Labels
+fromList = Labels . Map.fromList
