diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,8 @@
 ## MASTER
+## Dotenv 0.5.1.1
+
+* Allow `.env` empty files
+
 ## Dotenv 0.5.1.0
 
 * Add support for command substitution on env vars.
diff --git a/dotenv.cabal b/dotenv.cabal
--- a/dotenv.cabal
+++ b/dotenv.cabal
@@ -1,5 +1,5 @@
 name:                dotenv
-version:             0.5.1.0
+version:             0.5.1.1
 synopsis:            Loads environment variables from dotenv files
 homepage:            https://github.com/stackbuilders/dotenv-hs
 description:
diff --git a/spec/Configuration/Dotenv/ParseSpec.hs b/spec/Configuration/Dotenv/ParseSpec.hs
--- a/spec/Configuration/Dotenv/ParseSpec.hs
+++ b/spec/Configuration/Dotenv/ParseSpec.hs
@@ -6,9 +6,9 @@
 import Configuration.Dotenv.ParsedVariable (ParsedVariable(..),
                                             VarValue(..),
                                             VarFragment(..))
-import Data.Void (Void)                                            
+import Data.Void (Void)
 import Test.Hspec (it, describe, Spec, hspec)
-import Test.Hspec.Megaparsec (shouldParse, shouldFailOn)
+import Test.Hspec.Megaparsec (shouldParse, shouldFailOn, shouldSucceedOn)
 import Text.Megaparsec (ParseError, parse)
 
 main :: IO ()
@@ -147,6 +147,9 @@
       `shouldParse` [ParsedVariable "FOO" (Unquoted [CommandInterpolation "command"])]
     parseConfig "FOO=asdf_$(command)"
       `shouldParse` [ParsedVariable "FOO" (Unquoted [VarLiteral "asdf_", CommandInterpolation "command"])]
+
+  it "parses empty content (when the file is empty)" $
+    parseConfig `shouldSucceedOn` ""
 
 parseConfig :: String -> Either (ParseError Char Void) [ParsedVariable]
 parseConfig = parse configParser ""
diff --git a/src/Configuration/Dotenv/Parse.hs b/src/Configuration/Dotenv/Parse.hs
--- a/src/Configuration/Dotenv/Parse.hs
+++ b/src/Configuration/Dotenv/Parse.hs
@@ -33,7 +33,7 @@
 -- arguments separated by @=@. Comments in all positions are handled
 -- appropriately.
 configParser :: Parser [ParsedVariable]
-configParser = between scn eof (sepEndBy1 envLine (eol <* scn))
+configParser = between scn eof (sepEndBy envLine (eol <* scn))
 
 -- | Parse a single environment variable assignment.
 envLine :: Parser ParsedVariable
