Hi Robert, my post is not so clear and I don't fully understand how cached map services work. Let me try again. I currently have four layers in one (non-cached) map service. They are all showing up in the TOC just like the example and I can turn individual layers on or off like the example. However they are rendering too slow so I need to cache the service. This won't work for me because I want to be able to turn individual layers on and off (which as you say I can't do in a cached service). My understanding is the way to handle this is to put the four different layers into four different cached map services (i.e. each map service has one of the four layers) so rather than turning the layer off, I can turn the service off (which looks to the user like they are just turning the layer off). So instead of having one map service with four layers shown in the TOC, I want four cached map services showing in the TOC that can be turned on or off with a checkbox. Hope that makes sense. Is this the right way to do this or am I on the wrong track? Can a cached service be turned on and off with a check box, or will it always be on? My goal is to have my application working exactly like the example but I need the layers to draw faster. I just had a quick look at the example again. The example is not cached but is fast enough for my purposes. However, my application is far slower. The polygon layer I have can take a minute or more to draw. My other layers are also taking a long time to draw. Can I speed this up without caching the service? I'm using a File Geodatabase for the slow polygon layer and an sde database for the other layers which are also slow but not as bad (and not as big). The small project I am doing is just for a demo for a client. I won't need to use a File Geodatabase in production.