The goal is to have an ERA as close to 0 as possible. Anything under 1 is fantastic, under 2 is great, under 3 is good, under 4 is acceptable, etc. A batting average over .300 is usually considered good.
To build on what Ivan and Lefteh said, typically you will see higher ERAs among American League pitchers because they don’t have the luxury of facing a pitcher every 9 batters, instead facing a designated hitter that usually bat fairly well, taxing the pitcher more.
Pitchers are also held to lower batting standards than other position players because it is understood that they must focus on their pitching skills rather than their batting. For example, a .200 batting average would be considered quite good for a pitcher, while if a player of another position had a .200 it would be considered mediocre.