Date: 201812
Local time of day: 1201-1800
Location: ZZZ.Airport, US
Flight conditions: VMC
Light: Daylight
Aircraft: Bombardier/Canadair Undifferentiated or Other Model
Operator: Air Carrier
Operating under: Part 121
Flight plan: IFR
Flight phase: Initial Approach
Airspace: Class C MSN
ATC / advisory: TRACON ZZZ
Reporter organization: Air Carrier
Reporter function: Captain; Pilot Flying
Reporter qualification: Flight Crew Air Transport Pilot (ATP); Flight Crew Instrument; Flight Crew Multiengine
Human factors: Confusion; Communication Breakdown
Second reporter function: Pilot Not Flying; First Officer
Anomaly: ATC Issue All Types; Deviation - Altitude Excursion From Assigned Altitude; Deviation / Discrepancy - Procedural Clearance; Deviation / Discrepancy - Procedural Published Material / Policy
Detector: Person Air Traffic Control; Person Flight Crew
When detected: In-flight
Result: Air Traffic Control Issued Advisory / Alert; Flight Crew Requested ATC Assistance / Clarification
Contributing factors: ATC Equipment / Nav Facility / Buildings
Primary problem: ATC Equipment / Nav Facility / Buildings

Narrative: While receiving vectors for the ILS XX; ATC advised us to check our altimeter setting of 29.89 and stated we were indicating 500 feet low. Our altimeter settings were set correct with latest ATIS as 29.90 and all altimeters were indicating we were level at 3000 feet. We adjusted to 29.89.  We were then cleared to 2;700 feet. I queried ATC again as we were leveling off and again the controller stated we were 500 feet low; then stated it showed correct now. We are unsure as to what caused ATC to read our transponder output as 500 feet below our actual altitude. Post flight; I contacted ATC via phone and inquired if they suspected an equipment problem at their facility or with our aircraft. The Controller stated that it was their facility and not to worry about anything. As the situation was unusual and even though ATC said it was their equipment; I still had some doubt with our equipment; I chose to contact Dispatch and Maintenance. We were heading back to [departure airport] and I didn't want to risk any altitude separation issues. Transponder 1 was placed on MEL and we continued with an uneventful next flight.  Subsequently; I queried ATC (double-checking new altitude of 2;700 feet assigned) at the suspected time we were to receive our final vector to join the localizer; it may have distracted controller. After he stated that our altitude was accurate; the controller gave us a vector to join the XX localizer. With a turn of about 60 degrees; we were unable to join and passed through the localizer. We were given an additional vectors to rejoin. Landing and approach were uneventful.I believe we did everything correct to trap and mitigate the threat of a potential altimeter error or altimeter setting error and deduced it to possible transponder altitude encoding issue or ATC facility issue. My only suggestion is that I could have recognized that our turn to join the localizer was not going to work out and requested additional vectors sooner.


Second narrative: [Report narrative contained no additional information.]


Synopsis: Air carrier flight crew reported ATC perceived an altitude excursion; possibly due to ground equipment problem.