I've spent years working in churches and state office of denominations.
While most churches do not charge for VBS, some do. Of those that do, it is a very very small % who charge bec VBS is a 'big hoopla.' The vast majority of churches that charge do so for 2 reasons:
1. To pay for the program. Programs cost money. I am constantly amazed at how folks think that bec a program is from a church that there should be no cost. Why? Is God raining down paints, paper, felt, glue and sippy cups from heaven? Supplies cost money, food costs money. Sometimes you may have to get a rider on your insurance coverage, which costs money. Some churches may generally not have line item budgets for VBS bec (a) they decided to VBS after the budget was set or (b) their members/program users do not donate enough money to cover extras like VBS or bec in today's economic climate, chuches are suffering just like any other non-profit/business -- people are spending and donating less money. If you don't have the money, but want to provide a program, you're going to have to charge for it. Or not do it. Which would be preferable, no program or paying for the program you are choosing to use?
2. Experience has shown that people do not value that which they get for free and even the smallest fee can create a complete attitude change. If someone gets something for free, the reailty is that they will not show up or show up irregularly making planning difficult (esp staffing and food procurement). They will show up late for drop off or, bec they're using it as free day care -- worst of all they'll show up HOURS late for pick up. These same people also will not volunteer in order to keep the costs down. However, charge $5 or $10 and all of a sudden those same latecomers show up on time and take the program much more seriously.