diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,8 @@
-## [_Unreleased_](https://github.com/freckle/freckle-app/compare/v1.9.0.1...main)
+## [_Unreleased_](https://github.com/freckle/freckle-app/compare/v1.9.0.2...main)
+
+## [v1.9.0.2](https://github.com/freckle/freckle-app/compare/v1.9.0.1...v1.9.0.2)
+
+- Fix for not setting ECS Metadata tags in `StatsClient`
 
 ## [v1.9.0.1](https://github.com/freckle/freckle-app/compare/v1.9.0.0...v1.9.0.1)
 
diff --git a/freckle-app.cabal b/freckle-app.cabal
--- a/freckle-app.cabal
+++ b/freckle-app.cabal
@@ -1,6 +1,6 @@
 cabal-version:      1.18
 name:               freckle-app
-version:            1.9.0.1
+version:            1.9.0.2
 license:            MIT
 license-file:       LICENSE
 maintainer:         Freckle Education
diff --git a/library/Freckle/App/Ecs.hs b/library/Freckle/App/Ecs.hs
--- a/library/Freckle/App/Ecs.hs
+++ b/library/Freckle/App/Ecs.hs
@@ -21,10 +21,16 @@
   }
 
 data EcsMetadataError
-  = EcsMetadataErrorInvalidURI String
-  | EcsMetadataErrorInvalidJSON HttpDecodeError
+  = EcsMetadataErrorNotEnabled
+  | EcsMetadataErrorInvalidURI String
+  | EcsMetadataErrorUnexpectedStatus Request Status
+  | EcsMetadataErrorInvalidJSON Request HttpDecodeError
   deriving stock Show
 
+-- | Parsing for the @/@ response
+--
+-- <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-metadata-endpoint-v4.html#task-metadata-endpoint-v4-examples>
+--
 data EcsContainerMetadata = EcsContainerMetadata
   { ecmDockerId :: Text
   , ecmDockerName :: Text
@@ -36,6 +42,10 @@
 instance FromJSON EcsContainerMetadata where
   parseJSON = genericParseJSON $ aesonDropPrefix "ecm"
 
+-- | Parsing of the @/task@ response
+--
+-- <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-metadata-endpoint-v4.html#task-metadata-endpoint-v4-response>
+--
 data EcsContainerTaskMetadata = EcsContainerTaskMetadata
   { ectmCluster :: Text
   , ectmTaskARN :: Text
@@ -50,24 +60,32 @@
 aesonDropPrefix :: String -> Options
 aesonDropPrefix x = defaultOptions { fieldLabelModifier = dropPrefix x }
 
-getEcsMetadata
-  :: (MonadIO m, MonadError EcsMetadataError m) => m (Maybe EcsMetadata)
+getEcsMetadata :: (MonadIO m, MonadError EcsMetadataError m) => m EcsMetadata
 getEcsMetadata = do
-  mURI <- liftIO $ lookupEnv "ECS_CONTAINER_METADATA_URI"
+  mURI <-
+    liftIO $ (<|>) <$> lookupEnv "ECS_CONTAINER_METADATA_URI_V4" <*> lookupEnv
+      "ECS_CONTAINER_METADATA_URI"
 
-  for mURI $ \uri ->
-    EcsMetadata
-      <$> makeContainerMetadataRequest (uri <> "/")
-      <*> makeContainerMetadataRequest (uri <> "/task")
+  uri <- maybe (throwError EcsMetadataErrorNotEnabled) pure mURI
 
+  EcsMetadata
+    <$> makeContainerMetadataRequest uri
+    <*> makeContainerMetadataRequest (uri <> "/task")
+
 makeContainerMetadataRequest
   :: (MonadIO m, MonadError EcsMetadataError m, FromJSON a) => String -> m a
-makeContainerMetadataRequest =
-  mapEither EcsMetadataErrorInvalidJSON
-    . getResponseBody
-    <=< httpJson
-    <=< mapEither (EcsMetadataErrorInvalidURI . displayException)
-    . parseRequest
+makeContainerMetadataRequest uri = do
+  req <- mapEither (EcsMetadataErrorInvalidURI . displayException)
+    $ parseRequest uri
+  resp <- httpJson req
+
+  let status = getResponseStatus resp
+
+  unless (statusIsSuccessful status)
+    $ throwError
+    $ EcsMetadataErrorUnexpectedStatus req status
+
+  mapEither (EcsMetadataErrorInvalidJSON req) $ getResponseBody resp
 
 mapEither :: MonadError e m => (x -> e) -> Either x a -> m a
 mapEither f = either (throwError . f) pure
diff --git a/library/Freckle/App/Stats.hs b/library/Freckle/App/Stats.hs
--- a/library/Freckle/App/Stats.hs
+++ b/library/Freckle/App/Stats.hs
@@ -267,8 +267,8 @@
 
 getEcsMetadataTags :: MonadIO m => m [(Text, Text)]
 getEcsMetadataTags = do
-  emMetadata <- runExceptT getEcsMetadata
-  either (([] <$) . err) (pure . maybe [] toTags) emMetadata
+  eMetadata <- runExceptT getEcsMetadata
+  either (([] <$) . err) (pure . toTags) eMetadata
  where
   err e = liftIO $ hPutStrLn stderr $ "Error reading ECS Metadata: " <> show e
 
diff --git a/package.yaml b/package.yaml
--- a/package.yaml
+++ b/package.yaml
@@ -1,5 +1,5 @@
 name: freckle-app
-version: 1.9.0.1
+version: 1.9.0.2
 maintainer: Freckle Education
 category: Utils
 github: freckle/freckle-app
