diff --git a/middleman-core/lib/middleman-core/configuration.rb b/middleman-core/lib/middleman-core/configuration.rb
index <HASH>..<HASH> 100644
--- a/middleman-core/lib/middleman-core/configuration.rb
+++ b/middleman-core/lib/middleman-core/configuration.rb
@@ -45,7 +45,7 @@ module Middleman
       end
 
       def config
-        self.class.config
+        @_inst_config ||= self.class.config.dup
       end
 
       # Backwards compatibilty with old Sinatra template interface
Instances actually need to dup the global config so they don't set variables that may be different later (tests, config reloading)