Look, I don’t know of a easy way to say this, so I’m just gonna come right out and say it: judging by the way I hear people speak up here, the North Carolina public school system has apparently done a horrible job in explaining the difference between “good” and “well”. So let’s see if I can clear up some of the confusion for you:
“Good” is typically used as an adjective. Adjectives modify nouns. So you’d say “That was a good dinner” or “He is a good quarterback”.
“Well” is typically used as an adverb. Adverbs modify verbs. So you’d say “He cooks well” or “He throws the ball well”.
It’s all quite simple, no? Well, the English language being what it is, there’s an exception to this rule, and that’s when linking verbs get thrown in the mix. Most verbs imply some kind of action (like “cooks” or “throws”). But some verbs simply link a noun with a state of being. Words such as “appears”, “seems”, “looks’, “tastes”, “grows”, and most forms of “to be” (“am”, “is”, “are”, “was”) are such linking verbs, and you can use either “good” or “well” (“I feel good” or “I’m well, thanks”) in some cases, but not all.
So how do you know which one to use?
In most cases, if it’s a simple adjective you use “good” and “well” if it’s a simple adverb. If it’s a linking verb, simply remove the verb in question and replace it with “am”, “is” or “are”. If the resulting sentence makes sense, use “good”; if it makes no sense, use “well”. For example, “the pizza looks good” would become “the pizza is good”, which makes perfect sense. On the other hand, “the bunny smelled the grass but decided not to eat any” would become “the bunny is the grass but decided not to eat any”, which makes no sense, so you’d then say that the “bunny smelled the grass well”.