You can carry thread over on the back if there is no stitching between two areas of the design, but only for short distances. This means three or four squares on aida, or four threads on linen.
The thread can be carried farther if the region between the two areas has been (or will be) filled in with other stitches. How far? This depends on the relative darkness of the colors. The carried thread should be woven under the existing stitches, but sometimes dark colors show through when woven under lighter colors. Check to make sure this isn't happening. Even under the best conditions, you probably shouldn't carry the thread more than a distance of five or six stitches.
Try to plan your work so that it isn't necessary to travel very far to do the next stitch.
What if a design has individual stitches with no other stitches near by? Imagine a design that represents snowflakes by individual, scattered cross stitches. It calls for each cross stitch to be done with three strands of white floss on a dark fabric. You try traveling from stitch to stitch, but the white floss shows through the fabric. What to do?
Try the following. Use one strand of floss, but stitch the first half of the stitch three times. Now you have the first slant done, with three strands of floss showing. Do the same for the second half of the stitch. When you travel to the next stitch, a single strand in the background won't show through as much as three strands.
Or, if you want to get a little more radical, use knots--one of the few cases where I think using knots is good. Use a single strand to do the stitch as described above. Then take the two ends and tie a square knot to anchor the stitch and cut the ends short. A knot made with a single strand won't be very large and shouldn't create a lump on the front. If you plan on entering the piece in a contest, don't use knots.