key = s.PathSpec.MakePathSanitized(key)
                                                }
                                                for _, p := range taxonomyPages {
-                                                       if p.sections[0] == plural && p.sections[1] == key {
+                                                       // Some people may have /authors/MaxMustermann etc. as paths.
+                                                       // p.sections contains the raw values from the file system.
+                                                       // See https://github.com/gohugoio/hugo/issues/4238
+                                                       singularKey := s.PathSpec.MakePathSanitized(p.sections[1])
+                                                       if p.sections[0] == plural && singularKey == key {
                                                                foundTaxonomyPage = true
                                                                break
                                                        }
 
        writeSource(t, fs, "content/p4.md", fmt.Sprintf(pageTemplate, "Hello World", "", "", "- \"Hello Hugo world\"", "- pl1"))
 
        writeNewContentFile(t, fs, "Category Terms", "2017-01-01", "content/categories/_index.md", 10)
-       writeNewContentFile(t, fs, "Tag1 List", "2017-01-01", "content/tags/tag1/_index.md", 10)
+       writeNewContentFile(t, fs, "Tag1 List", "2017-01-01", "content/tags/Tag1/_index.md", 10)
 
        err := h.Build(BuildCfg{})