diff --git a/hyakko.cabal b/hyakko.cabal
--- a/hyakko.cabal
+++ b/hyakko.cabal
@@ -1,5 +1,5 @@
 name:             hyakko
-version:          0.6.2
+version:          0.6.3
 cabal-version:    >= 1.6
 build-type:       Simple
 license:          MIT
diff --git a/src/Hyakko.lhs b/src/Hyakko.lhs
--- a/src/Hyakko.lhs
+++ b/src/Hyakko.lhs
@@ -302,7 +302,7 @@
 >           ([("header", header)], count)
 >   source <- sources $ dirOrFiles opts
 >   html <- hyakkoTemplate opts $ concat
->     [ [("title", title)]
+>     [ [("title", if isHeader then getHeader header else title)]
 >     , h
 >     , cssTemplate opts
 >     , multiTemplate $ length source
@@ -311,6 +311,15 @@
 >     ]
 >   putStrLn $ "hyakko: " ++ src ++ " -> " ++ dest
 >   T.writeFile dest html
+
+Small helper to yank out the header text from an html string, if there is a
+header at the top of the file.
+
+> getHeader :: String -> String
+> getHeader htmlheader =
+>   let reg            = L.pack ">(.+)</h\\d>"
+>       [(_:header:_)] = htmlheader =~ reg
+>   in header
 
 Helpers & Setup
 ---------------
