Narrative:

I was cleared pilots discretion out of cruise flight level to 14000 ft. In descent reset altimeter from 29.92 to current altimeter as assigned by ZAB (but did this before reaching 18000 ft). Approaching FL190 was asked to stop descent and maintain FL190. Did so, but actual altitude was 300 ft lower than indicated, so actual level off was 18700. Corrective action: don't change altimeter setting during descent until going through 18000 ft. If ATC gives a descent clearance which includes the local altimeter setting and then changes the clearance to a flight level altitude, perhaps it would make sense to cancel the local altimeter setting as well.

Google
 

Original NASA ASRS Text

Title: WRONG ALTIMETER SETTING.

Narrative: I WAS CLRED PLTS DISCRETION OUT OF CRUISE FLT LEVEL TO 14000 FT. IN DSCNT RESET ALTIMETER FROM 29.92 TO CURRENT ALTIMETER AS ASSIGNED BY ZAB (BUT DID THIS BEFORE REACHING 18000 FT). APCHING FL190 WAS ASKED TO STOP DSCNT AND MAINTAIN FL190. DID SO, BUT ACTUAL ALT WAS 300 FT LOWER THAN INDICATED, SO ACTUAL LEVEL OFF WAS 18700. CORRECTIVE ACTION: DON'T CHANGE ALTIMETER SETTING DURING DSCNT UNTIL GOING THROUGH 18000 FT. IF ATC GIVES A DSCNT CLRNC WHICH INCLUDES THE LCL ALTIMETER SETTING AND THEN CHANGES THE CLRNC TO A FLT LEVEL ALT, PERHAPS IT WOULD MAKE SENSE TO CANCEL THE LCL ALTIMETER SETTING AS WELL.

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.