Beginner's Guide for WordPress - Start your WordPress Blog in minutes.
Choosing the Best
WordPress Hosting
How to Easily
Install WordPress
WordPress Plugins
View all Guides

What is a WordPress Child Theme? Pros, Cons, and More

Last updated on by
Special WordPress Hosting offer for WPBeginner Readers
What is a WordPress Child Theme? Pros, Cons, and More

A lot of our users ask us which template are we using? Our response is that we are using a custom child theme built on the Genesis theme framework. The follow up question most of the time is a two-part question. What is a WordPress theme framework? The second part of the question is what is a WordPress child theme? We have already explained what is a WordPress theme framework in our previous article. In this article, we will do our best to answer questions like what is a WordPress child theme, when should you create a child theme, why do people create child themes, and lastly advantages and disadvantages of using a child theme. Our hope is that after reading this article, you will have a clear understanding of what is a WordPress child theme, and you will know whether you should use a child theme or not.

WordPress Child Themes

What is a WordPress Child Theme

A WordPress child theme is a WordPress theme that inherits its functionality from another WordPress theme, the parent theme. Child themes are often used when you want to customize or tweak an existing WordPress theme without losing the ability to upgrade that theme. In the past, there was no easy way of updating WordPress themes without losing all the custom styling and changes that you had made. This becomes chaos when all the sudden you find out a widely used script in popular themes has a major exploit, and you need to update your themes ASAP. It becomes a tough choice because on one hand, you would lose all the custom styles if you update. On the other hand, you risk your site getting hacked if you don’t update fast enough.

The core team and the community decided to solve this problem by introducing the concept of parent theme and child theme. A child theme in WordPress would inherit all the functionality, features, and the code of the parent theme without making any changes to the parent theme itself. This allowed users to change the styling of the parent theme and add/modify features without losing the ability to update the parent theme.

In theory, any WordPress theme can have child themes however not all WordPress themes are good parent themes. A parent theme with limited functionality and features is not exactly an ideal parent theme candidate in most cases. We will talk about the exceptions later on in the article.

A good parent theme also known as theme frameworks usually contains its own action hooks and filters. This allows designers and developers to create a robust custom WordPress site using child themes in a fraction of time.

Why do people use WordPress Child Themes?

Designers and developers use child themes to speed up their development. When using a good parent theme, you can drastically reduce the time it takes for you to create a WordPress site. All good parent themes aka theme frameworks offer tons of functionality and customization options, so you don’t have to code everything. DIY users often create child themes to tweak an existing theme without losing the ability to update the parent theme if needed.

Creating a WordPress child theme can be as simple as creating a new style.css file in a new folder. All you really need is one line in your new style.css header that defines the template (see the Codex for reference). A robust child theme can have just as many template files as the parent theme if not more. A child theme can have template files that are not even available in the parent theme.

When Should You Use a Child Theme?


The decision to use a child theme often depends on your needs. Most sites that we build for ourselves and our clients are child themes of the Genesis theme framework. In rare cases when the project is too complex or too simple, then we build it as a standalone custom WordPress theme. As WordPress developers, we need to streamline our workflow while creating quality themes. Creating a child theme of Genesis framework helps us accomplish just that.

For users we recommend child themes only if you find yourself constantly adding new functions to your theme’s functions.php file and/or constantly adding/modifying the style.css file of your theme. In these cases, we highly recommend that you use a child theme. A short while ago during our WordPress meetup talk, one of the members asked us what if you are only adding custom styles? Is it better to use a child theme or a custom CSS plugin?

The answer to that depends on how savvy and comfortable you are with technology. If you are only modifying the styles of a few elements, then using a custom CSS plugin works just fine. However, if you find yourself changing the entire color scheme, moving things around in the CSS, etc, then you definitely should consider using a child theme.

Picking a Good Parent Theme is IMPORTANT

All WordPress frameworks are parent themes, but not all parent themes are frameworks. We cannot stress this enough. While any WordPress theme can have child themes, not all of them are meant to be used as theme frameworks. We have seen numerous beginners who make the mistakes of creating a child theme of a parent theme that doesn’t offer much functionality.

If you are creating a child theme where you find yourself replacing a lot of the parent theme files, then you should rethink your process. For example you really like the Twenty Eleven theme, and you decided to create a child theme. In your child theme, you had the style.css file, and functions.php file. On top of that, you decided that you don’t like the way the footer looks, so added footer.php. Same for header, etc. If this is the case, then you shouldn’t be using Twenty Eleven as a parent theme. Rather you should be using it as a starter theme that you turn into your own custom theme.

We have had several users who created custom child themes which really should be totally independent custom themes because they had overridden almost all of the parent theme files.

In short, you should use a child theme when you need the functionality, features, and awesomeness of a powerful parent theme without writing much code for it yourself.

Advantages of Using a WordPress Child Theme

Like most things, there are advantages and disadvantages to using a WordPress Child theme. Let’s take a look at advantages first.

1. Safe Updates
A child theme automatically inherits the parent theme’s features, styles, and templates. This allows you to make changes to your site using child themes without ever modifying the parent theme. When a new version of the parent theme arrives, you can safely update it as all your modifications are saved in the child theme.

2. Easy to Extend

A child theme built on a powerful theme framework allows a great deal of flexibility without writing a lot of code. You can selectively modify only the template files and functions that you need without going through other template files. You can add new functionality and much more.

3. Fallback Safe

When you are creating a complete theme you need to think about all the possible scenarios and code for them. However, when you are working on a child theme and you forget to code for something, then there is always the parent theme’s functionality available as the fallback option.

Disadvantages of Using a Child Theme

One of the biggest disadvantage of using child themes is the time you need to invest to learn about the parent theme. There is a learning curve specially when you are working with robust frameworks because each of them have their own hooks and filters. You really have to know those to maximize the potential. In our opinion, this learning curve is a one-time thing. For example the first few child themes that you create might take you longer, but after that you will be creating custom websites in a fraction of time. Your overall performance will improve.

Another disadvantage often pointed out is that your parent theme’s developers may loose interest and abandon it, drop a feature that you were using in your child theme, or bring a change that totally destroys your child theme. This is not as bad as it sounds. Mainly because all good WordPress themes are open source and GPL. If the parent theme developer abandons the project, then nothing says that you have to stop using it. Often times, other folks in the community step up to take over the project. If the original theme developers remove a certain feature, then you can simply add it in your child theme. You have the code for it. Lastly, if they make a drastic change that you don’t like, then you can always avoid updating. Theme updates are crucial when there is a security exploit. We always recommend users to update themes because it helps ensure future compatibility with other scripts and plugins.

If you are using a commercial theme framework like Genesis, then you have support option available to help you upgrade your theme or troubleshoot problems. Also a platform like Genesis is not going to just disappear because there is a stable business organization behind it with thousands of customers world wide. For example, they removed certain built-in widgets, but they made them publicly available as plugins for those who still wanted to use it.


It is important to know that even though you can always create a child theme of any WordPress theme, sometimes you may not need a child theme. Think about the number of changes you have planned for your child theme, if the changes you are planning are minor, then you can always create a custom-style.css file in your theme or use a Custom CSS plugin. If the changes are too extreme where you find yourself overriding the core parent theme files, then you probably should be creating a custom theme.

We hope that this article helps you understand what is WordPress Child Theme and whether it is a good fit for you or not. If you think we missed something, then please let us know in the comments below.

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi. Page maintained by Syed Balkhi.

WPBeginner's Video Icon
Our HD-Quality tutorial videos for WordPress Beginners will teach you how to use WordPress to create and manage your own website in about an hour. Get started now »


  1. molly says:

    Would you recommend using a child theme for someone with zero coding skills?

    • WPBeginner Support says:

      Actually it depends on what they want to achieve. The most important reason for using a child theme is when you want to customize your theme without editing the parent theme.

  2. Mark Toon says:

    My computer knowledge is all host based, 3rd generation stuff, so all this web “stuff” is a foreign language – one I don’t really want to learn. Yes, I’m that old! I understand parent child relationships in databases, but this web stuff is beyond me.

    My kids gave me a website as a christmas present to display works from my hobby. Nice! Initially, my daughter set the site up using a stock theme, and put some content out there, just to show me what was possible. The thought was that a stock, off the shelf kind of set-up would be enough for me to post pictures and text, in some kind of organized fashion. That’s really all I’m doing. No e-commerce, very little email, and not a whole lot of commenting and replying. (That’s what Facebook is for…)

    A week after Christmas, after I had set the site up the way I wanted it, I updated the theme and lost everything! Since then, I have avoided anything that looks like a theme update.

    Now, hearing about how many security issues there are (and after having one particular page targeted by some kind of Russian spammers leaving endless and pointless comments) I see that may not be the best approach.

    Is there any way to update a parent theme *without* losing everything? I’ve got a years worth of work created online and really don’t think I want to have to restart from scratch because of a random update.

    Am I as screwed as I feel I am?

    • WPBeginner Support says:

      Hi Mark :)

      It is alright to feel overwhelmed by complex terminologies. However, many of our users, who all started like that eventually got better at managing their websites like total pros :)

      Yes you should keep your theme updated. All good quality WordPress themes can be easily updated. Unless you make direct changes into your theme files. Those changes will be overwritten when you update the theme.

      Bookmark our WordPress troubleshooting guide and you will be all set to fix minor issues on your own without needing any help. It also have a section on how to switch to a default theme, which is the first step in fixing a poor theme update.

  3. Bryan says:

    its very helpful in my blogging. i use Parent and child both of them.
    please check my link.

  4. Eddie says:

    Hi There, Great article! This really clarifies a few things for me, but now brings me to question some of my motives.

    I’m interested in setting up a directory theme on a sub-domain HOWEVER as it appears most of these theme are child themes BUT I don’t necessarily have a need for a full fledged parent theme. My question is, do I / should I install a parent framework theme 1st in order to take full advantage of the directory child theme?

    Hope that makes sense?

    • WPBeginner Support says:

      Yes, you can check documentation for your directory theme to see how they recommend setting up a child theme.

  5. Mato says:

    I recently used hueman theme and I was able to create my own child theme for the today theme. Just added the template tag in style.css for the child theme to reflect the parent theme and a code to import stylesheets in the functions.php of the child theme. From there, I could make all the modifications I wanted to the parent theme. Was a good experience learning how to create a child theme. Thanks to wpbeginner for being there for us.

  6. Richard Jones says:

    Please can you explain how duplicating a template file into a child theme and then making a minor modification to it allows one to benefit from a security update to the parent theme? Surely the the child themes’ code will retain the vulnerability and continue to override the parent theme’s fix?

    • WPBeginner Support says:

      Most well coded WordPress themes avoid coding functionality right into a template. Instead, these functionalities are stored in different directories like inc, js, or functions.php file. Most templates used to display pages or sections on your website, usually generate HTML from template tags defined elsewhere in the WordPress core or your theme’s functionality files. It is not recommended to duplicate functionality files, this would result into error because those functions would already be defined in the parent theme.

      Still, if you are unsure, then you can manually update your child theme after an update to the parent theme. You can use file difference tools to see whats changed into new template files and then copy those changes into your child theme.

  7. bikeman says:

    Please can you explain how duplicating a template file into a child theme and then making a minor modification to it allows one to benefit from a security update to the parent theme? Surely the the child themes’ code will retain the vulnerability and continue to override the parent theme’s fix?

  8. Daquan Wright says:

    I need to ask a question answer asap as I am working on my own site.

    Do I need to create a child-theme for my own wordpress theme (as I am the only one who will update it)?

    I’ve never used one before.

    Also, do I need to create a child-theme for clients when they will be able to modify their theme (but no updates will be released for it)?

    I will be making websites, but I’m not releasing periodic updates. So I need these points clarified, or, should all wordpress themes use a child-theme?

    • WPBeginner Support says:

      Its up to your personal choice. If you are writing a theme for your own use, then you can make changes to it directly.

      About adding child theme for clients, again it is up to you.

  9. Joshua Grant says:

    Something to watch for: child themes aren’t ALWAYS totally update safe. We recently hit an issue with a client site where a parent theme — one of those “premium all-in-one” themes that shall remain unnamed — significantly changed their page structures and classes, invalidating all of our child theme CSS.

    • david b says:

      hi gurus. ok i have a website that i have spent eternity on getting it exactly how i want it. i paid money for a theme i liked it so much. now just when everything was going great, i am no longer able to update it (because it totally ruins my site in every way imaginable) and it is no longer responsive as it once was. The weird thing is, it is responsive on an android tablet just not apple stuff. Does anyone have any advice to get it responsive again? Should I somehow start over and use a child theme? (I never used a child theme I made all of my myriad of customizations on the parent theme)…what are my options? Any help would be GREATLY appreciated!

  10. Mish says:

    I am using Twenty Eleven Theme and the only change that i wanna do, at the moment, is add posted on date to it. Can you tell me how to do that?

  11. Phil Long says:

    Child themes: potential complications outweigh the marginal benefits. You may as well just install an original version which you never touch and a customer version. So you always have the originally too reference/fall back on.
    Problem with child themes: Do you have the same differentiation built in between Splash and Site Home Page?
    1, If I wanted to customise the CSS, why not just create a custom_style.css and enqueue it after style.css.
    2. But the main problem I have is that it preservers the parents functions file. Considering its the hub of the site you should as a developer be getting to know that file really well, not be presented with a blank child functions.php. And worst than, that the Parent functions.php usually sets up a whole load of constants & includes pointing to files and sub_directories in the parent theme

    2(a)Throughout your theme’s child php files their are more than likely CONSTANTS pointing the parent parent php files. If the whole purpose is to only customise the child theme then all those constant (or at least they declarations will have to be re-pointed).

    2(b)With the includes also pointing at parent files at best it could leave you mighty confused about why your child edits don’t see to be effecting anything. At worst it could create a fatal repeated function declaration error. So you’ll need to cut the includes out of the parent functions and replace them with the includes in your child.php but point them at child paths and files.php they will could cause.

    2(c)And then then are all the other parent functions in your functions.php which refer to parent.php files/functions. Again this means if you want to change any child.php you have to trawl through hierarchies of function calls to see if its triggered by the parents functions.php. If it is, then in order to maintain the principal of not customising parent.php you have to move that function from parent function.php to the child’s.

    I just think its not work the hassle, and certainly if I was to use a child again I would CUT AND PASTE all the entirety of parent functions. php into the child.

    3. AND when the parent theme UPGRADES you lose the fallback of the parent theme anyway.. although this might be preferable to the upgrade wiping out all your customised child.php files as happened to me once.

  12. Wayne Hatter says:

    I seriously think that this post is going to confuse a lot of people. Because as a developer… this is totally not targeted to me. Because I don’t even use a framework and my workflow streams pretty good.

    With the frameworks, you still have to learn the hooks and what they do.

    The same amount of time it would take to learn those hooks a person could learn to use the core WordPress hooks all the same.

    So here is a thought. It frameworks are the way to go, why are there still a great amount of themes being developed?

  13. jay says:


    I am a beginner and I am making a blog on weight loss. Do I need to get Genesis before selecting any template?

    I was just going to buy a theme from themeforest and someone stopped me and told me to buy a parent theme first? Is it needed for newbies? Or can we start with a theme from themeforest?

    I look forward to your response.


    • WPBeginner Support says:

      No it is not needed. Genesis is not a parent theme it is a theme framework. You don’t need either of them you can just purchase any good quality theme.

    • Bales says:

      Pls do some research before moving forward. I am a beginner too been learning as much as possible before picking a theme, reason being that I don’t want to put all this hard work into a website business and have it perform bad or worse totally fail because I jumped the gun and didn’t do my homework. Tip – themes that are badly coded can hurt your SEO and cause other issues.

      Now if you just want to play around with WP and build a website, not sure if you will be doing this long term, I would start with the themes already on WP.

      I have heard good and bad things about themes sold on Themforest. I would Google …are themes purchased on Themeforest reliable ….and see what you find. As WPB support said no need to use Geneisis just use a good quality theme. True but as a newbie, I assume you are not a devoloper, knowing what a “Good quality theme” looks like, is not easytask. Like I said pls reach if you are serious about having an online website biz.

      Now I have found my new passion after all my research, love making my own website for my business and will continue to design sites for others in my niche after all I have learned. I teamed up with Geneisis because I feel like I have the best of both worlds. They worry about WP updates and best practices and best cleanest code to use and a ton more thing I don’t care to learn about….. And I do the designing and tweaking and build my website with confidence knowing I did my research and picked the best company to help me with my goals, once again I went this route because I not a devoloper nor do I want to be one.

      Yes devoloper can make their own themes as some have commented this topic of child themes etc this is not for them. But I love it and happy I too can create child themes and not have to go back to school, to build a solid website for my biz. I just want to learn enough CSS etc to tweak themes built on Geneisis framework and I am ready to go. JUST my 2 Cents ….LOL

  14. imran hussain says:

    Very helpful for understanding child theme. thanks.


  15. Ria says:

    Hi, I wanted to ask if it’s true that child theme could be not so useful but wrong thing for website? I have wordpress twenty fifteen theme (customized). once I download already made child theme, was making some changes (copy/paste information from main files to shild theme) and “broke” my site. The guy who helped me to customize the theme, when I asked to create child theme, told me, that child themes makes site work slower, can make you confused (if you are making many changes, which one file is already changed) and it’s not good for site.Like all changes should be made only in main files. And he refused to create child theme. So how it is? Because everywhere I read that child theme is “must”. Is my “helper” answer is only laziness to make more work? So how it is?:) Thank you for help:)

    • WPBeginner Support says:

      Child Themes are a time saver. Some WordPress developers may not like to create child themes and would rather edit the main theme files. This is not safe in the long run and we will advise you against it. Perhaps you should consider getting better adviser for your project.

    • Steve Wilkinson says:

      That’s a really good ‘business’ plan for a developer who wants to keep you locked into their service. Every time that theme updates, they will have to rebuild their version of it. Or worse, you’ll not get the theme updates and miss improvement, but maybe even be open to exploits.

      Web development IS NOT a one-time thing! Unfortunately, that’s the way a lot of web design shops are setup. And usually, I’ve often found these are the marketing and graphic arts oriented ones that maybe understand the marketing/visual aspects of a site really well, but they don’t know much of anything about the technical side.

      I about fell out of my seat a few months back, when on a major podcast for graphic design professionals, the whole crew started talking about WordPress, plugin, and theme updates… and advised people not update stuff because that often breaks things!

      Well, yea… that’s why you don’t do what these folks are doing. They build a pretty site and hand it off to the client… who has to deal with hosting and issues around updating, not updating, etc. Rule #1 of WordPress sites is KEEP STUFF UP TO DATE!!! If whatever system/developer you’ve picked can’t handle that… you’ve picked the wrong one.

  16. Kirsten says:

    I am completely new to child themes. Could somebody give me a for instance on what is “an extreme change”, which means that a child theme would be the way to go for me?

    Thanks :-)

  17. Mike says:

    I am learning child theme it is crazy, Its so much I was never good with coding

  18. Maryam says:

    Let’s suppose I need to modify the header.php file so i over-ride it and place it in my child theme folder – along comes a theme update and the header.php file in the parent is updated with some useful updates. Will they apply to my child theme?

    • Steve Wilkinson says:

      I need to look into this more in detail (as I’m not an in-depth theme coder), but my understanding is that it’s a maybe/no kind of situation. Unless I’m mistaken, I think you can think of a child theme as kind of an overlay situation (remember those classroom projectors with sheets vellum and how they could be layered?).

      So, I suppose you’d get some of the new code and functions in the parent, so long as the child wasn’t overriding them. And, if you’ve copied the entire file from the parent, the child is going to have everything except the changes you made and the new updates they’ve made.

      But, if they’ve changed something where your child-them also has it declared, I think the child will override. I’d *love* to hear more about this, as it’s something I’ve been looking into more recently as well in customizing WooCommerce stuff (i.e.: what do I need to look for each time WooCommerce updates the template files).

      I’m sure a good theme developer could answer this much better, but that’s kind of my layman’s description as a code tweaker. :)

  19. WPBeginner Staff says:
  20. WPBeginner Staff says:


    A proper Theme System was introduced in WordPress 1.5 back in 2005. The earliest mention of child theme we could find was in the 2006 codex article on theme development. Hope this helps.

    • Thomas Vasquez says:

      Thank you, yes it does. You wouldn’t by any chance happen to have a link to that article do you, I could really use it. Thank you again.

    • Thomas Vasquez says:

      That is great, Thank you very much. Any chance you might have a link for that reference

  21. Thomas Vasquez says:

    Maybe someone here can provide an answer to a question I have been looking for for a while now: When did WordPress first introduce child themes?

    I have searched the Codex and checked each version and cannot find any mention of when they were introduced (or maybe I missed it?)

    Does anyone know?

  22. Dzagro says:

    it is helpful, well cleared now, thanks ;)

  23. HannahHudson says:

    This was very clear and direct. Thanks for the writeup.

  24. Kendall says:

    I am thinking of switching my blog from a free wordpress theme to Genesis Framework + Theme. Do you have any articles about picking the right theme? Also how to create custom headers/ logos for your blog that you can easily add to your site through the Genesis Framework?

  25. RandR says:

    Really very helpful, thanks

  26. Pratish says:

    WPBeginner has done an amazing job with this child theme. I’m using genesis as well and wondering whether you have customised an existing child theme or built one from scratch on this site?

    I’m not too familiar with CSS and was wondering whether you have any views on using either the Genesis Extender plugin or Dynamik Website Builder child theme – they both look to be quite user friendly but I’m not sure if the automatic ‘code’ generation will fill the site with bloat.

  27. Felix Arntz says:

    I love using child themes, I use them for almost every site I create. But you’re right, you have to find the right parent theme, I have this problem over and over again.

    I think there are too many theme developers whose theme don’t really care about child themes. In my opinion, it should be a basic thing to add your own theme hooks and such. It doesn’t have to be a huge framework like Genesis, it can be a full theme on its own – but still, there will always be people who want to modify some stuff, and in my opinion, child themes are simply the best way of handling this.

    Thank you for this article!

  28. Daniel says:

    There’s one thing I have noticed about child themes, which is the @import feature with the parent styles. (I’m not on about performance issues here either).
    The “problem” being, if you have a responsive theme, with a JS media query fallback for older browsers, then it will not work on imported stylesheets, which could create a problem.

  29. Pete says:

    I don’t child themes, I like to get deep into the code of any theme and I feel child themes tend to hide a lot of that code from me… to me they are just another complication to customising a theme.

  30. Andre says:

    The interesting things about child themes, especially if one is designing and selling (or freely giving away) themes, is that It’s almost a given that every person will need to use a child theme. I’ve encountered most users of my themes (or any theme really) will be making some form of modification to a theme at some point in time…whether they get it from me or another site. I plan to go a slight different direction by exploring further, the advantages of not using a child theme.

    • Editorial Staff says:

      Hey Andre,

      We deal with a lot of beginners and most go without making any changes to their themes. The only changes they make is by adding additional functionality through plugins.


  31. Connie says:

    I find it very strange how you define the relation between parent and child theme:

    one commentline in the style.css defines that ;=(

    I think you should explain that in your article …

    Cheers, Connie

    • Editorial Staff says:

      Had to think long and hard about whether we should add the code or not. Since this is a beginner’s guide, I decided to get rid of the code that was initially added by the author.

      I just modified the line where it said that creating a child theme is as simple as adding a style.css file with a link to the codex page that can be used as a reference.


  32. Keith Davis says:

    Hi Syed
    I’m with you on using Genesis.
    I use it now on all my own sites and all my client sites.

    Like you say, you can create a child theme for any WordPress theme, but if you use a parent theme such as Genesis, you know that you can rely on the coding.

Add a Comment

We're glad you have chosen to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and all links are nofollow. Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.