Narrative:

My GPS indicated an altitude of 5700 ft MSL. My altimeter indicated 6000 ft MSL. Believing my GPS, I corrected my altitude to have the GPS show 6000 ft, the altitude I was assigned by ATC. ATC informed me that my altitude was then 6300 ft. I corrected accordingly, and have contacted the manufacturers of the GPS for repair of the instrument.

Google
 

Original NASA ASRS Text

Title: A C172 PLT, CRUISING AT 6000 FT OVER BGR, BELIEVED THE ALT DISPLAYED BY HIS GPS WAS CORRECT. IT WAS INCORRECT BY 300 FT.

Narrative: MY GPS INDICATED AN ALT OF 5700 FT MSL. MY ALTIMETER INDICATED 6000 FT MSL. BELIEVING MY GPS, I CORRECTED MY ALT TO HAVE THE GPS SHOW 6000 FT, THE ALT I WAS ASSIGNED BY ATC. ATC INFORMED ME THAT MY ALT WAS THEN 6300 FT. I CORRECTED ACCORDINGLY, AND HAVE CONTACTED THE MANUFACTURERS OF THE GPS FOR REPAIR OF THE INST.

Data retrieved from NASA's ASRS site as of July 2007 and automatically converted to unabbreviated mixed upper/lowercase text. This report is for informational purposes with no guarantee of accuracy. See NASA's ASRS site for official report.