diff --git a/apiary-helics.cabal b/apiary-helics.cabal
--- a/apiary-helics.cabal
+++ b/apiary-helics.cabal
@@ -1,5 +1,5 @@
 name:                apiary-helics
-version:             1.1.2
+version:             1.1.3
 synopsis:            helics support for apiary web framework.
 description:         helics support for apiary web framework.
 license:             MIT
@@ -27,6 +27,7 @@
                      , monad-control      >=0.3   && <0.4
                      , wai                >=3.0   && <3.1
                      , bytestring         >=0.10  && <0.11
+                     , text               >=1.1   && <1.2
                      , data-default-class >=0.0   && <0.1
 
   hs-source-dirs:      src
diff --git a/src/Web/Apiary/Helics.hs b/src/Web/Apiary/Helics.hs
--- a/src/Web/Apiary/Helics.hs
+++ b/src/Web/Apiary/Helics.hs
@@ -1,4 +1,7 @@
 {-# LANGUAGE Rank2Types #-}
+{-# LANGUAGE TypeOperators #-}
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE OverloadedStrings #-}
 {-# LANGUAGE FlexibleContexts #-}
 {-# LANGUAGE NoMonomorphismRestriction #-}
 
@@ -7,6 +10,7 @@
     -- * initializer
     , HelicsConfig(..)
     , initHelics
+    , initHerokuHelics
     -- * action
     -- ** raw
     , transactionId
@@ -43,9 +47,11 @@
 
 import Data.Apiary.Compat
 import Data.Apiary.Extension
+import Web.Apiary.Heroku
 import Data.Default.Class
 import qualified Data.Vault.Lazy as V
 import qualified Data.ByteString as S
+import qualified Data.Text.Encoding as T
 
 data Helics = Helics (V.Key H.TransactionId) ThreadId HelicsConfig
 
@@ -95,10 +101,20 @@
 
 initHelics :: (MonadBaseControl IO m, MonadIO m) => HelicsConfig -> Initializer' m Helics
 initHelics cnf = initializerBracket' $ \m -> do
-    k <- liftIO $ V.newKey
+    k <- liftIO V.newKey
     control $ \run -> H.withHelics (toHelicsConfig cnf) $ run $ do
         tid <- liftIO $ forkIO $ H.sampler (samplerFrequency cnf)
         m (Helics k tid cnf)
+
+initHerokuHelics :: (MonadBaseControl IO m, MonadIO m, Has Heroku exts)
+                 => HelicsConfig -> Initializer m exts (Helics ': exts)
+initHerokuHelics cnf = initializerBracket $ \exts m -> do
+    k    <- liftIO V.newKey
+    cnf' <- maybe cnf (\key -> cnf { licenseKey = T.encodeUtf8 key } )
+        <$> liftIO (getHerokuEnv "NEW_RELIC_LICENSE_KEY" exts)
+    control $ \run -> H.withHelics (toHelicsConfig cnf') $ run $ do
+        tid <- liftIO $ forkIO $ H.sampler (samplerFrequency cnf')
+        m (Helics k tid cnf')
 
 recordMetric :: MonadIO m => S.ByteString -> Double
              -> ActionT exts prms m ()
