Aircraft model · Fixed wing single engine · Airplane · registry codes 7102803, 7102834

Manufacturer (registry)
PIPER · PIPER AIRCRAFT INC
Model
PA-28-161
Registry codes
7102803, 7102834
Registered
1,526 aircraft
Type
Fixed wing single engine
Engines
1 · Reciprocating
Seats
4
Weight class
Up to 12,499 lb
Cruise speed
108 mph
Certification
Type certificated
Data sheet
TCDS2A13
Holder
Piper Aircraft Inc.

Model codes come from the FAA registry’s reference file. ADs are matched to them by model name and maker. The FAA lists this model under more than one registry code, usually for different spellings of the maker. This page covers them all.

On this page

Aircraft by year built · 2,332

1954Registered nowDeregistered2026
Aircraft by the year they were built: 2,332 aircraft
19542
19762
1977451
1978391
1979389
1980152
1981164
198283
198377
198465
198567
198612
198834
1989102
19907
19911
19928
19932
19957
19962
19971
199811
199916
200034
200125
200226
200324
200416
200531
20061
200720
200817
200911
201026
20118
201217
20132
20142
201520
20165
20191

Airworthiness directives that may apply · 29

ADs whose products match this airframe model. Each AD’s applicability may narrow it by serial number, part number or configuration.

1977In forceSuperseded2026
ADs by the year they took effect: 34 ADs
19771
19794
19802
19821
19861
19891
19962
20002
20011
20041
20052
20062
20082
20091
20101
20111
20131
20151
20161
20171
20182
20211
20221
20241
See all 34 ADs
Query with SQL
duckdb -csv -c "SELECT d.ad_number, d.status, d.subject, d.effective_date
  FROM 'https://openairdocs.org/data/latest/faa_directive.parquet' d
  WHERE d.ad_id IN (SELECT ad_id FROM 'https://openairdocs.org/data/latest/faa_aircraft_model_directive.parquet' WHERE aircraft_model_code IN ('7102803', '7102834'))
  ORDER BY coalesce(d.effective_date, d.publication_date, d.issue_date) DESC, d.ad_number DESC"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

Information bulletins that may apply · 17

See all 18 bulletins
Query with SQL
duckdb -csv -c "SELECT s.saib_number, any_value(s.title) AS title, max(s.issue_date) AS issue_date, any_value(s.status) AS status
  FROM 'https://openairdocs.org/data/latest/faa_saib.parquet' s
  WHERE s.saib_id IN (SELECT saib_id FROM 'https://openairdocs.org/data/latest/faa_aircraft_model_saib.parquet' WHERE aircraft_model_code IN ('7102803', '7102834'))
  GROUP BY s.saib_number ORDER BY issue_date DESC"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

Registered aircraft · 1,526

See all 1,526 registered aircraft
Query with SQL
duckdb -csv -c "SELECT n_number, serial_number, year_manufactured, status, registrant_name, registrant_city, registrant_state
  FROM 'https://openairdocs.org/data/latest/faa_aircraft_registration.parquet'
  WHERE aircraft_model_code IN ('7102803', '7102834')
  ORDER BY n_number"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

NTSB investigations · 729

Aircraft matched to this model through the registry, by N-number and event date, checked against the reported serial number, make and model.

See all 729 investigations
Query with SQL
duckdb -csv -c "SELECT c.\"ntsbNumber\", c.\"eventDate\", c.\"eventType\", c.\"eventCity\", c.\"eventStateOrRegion\", a.n_number, a.\"aircraftMake\", a.\"aircraftModel\", c.\"highestInjuryLevel\", c.\"totalFatal\", c.\"completionStatus\", c.report_url
  FROM 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a JOIN 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c ON c.\"mKey\" = a.case_mkey
  WHERE a.aircraft_model_code IN ('7102803', '7102834')
  ORDER BY c.\"eventDate\" DESC, c.\"ntsbNumber\" DESC"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

FAA incident reports · 1,608

Matched to this model through the registry, by N-number and event date, checked against the reported make and model.

See all 1,608 incident reports
Query with SQL
duckdb -csv -c "SELECT report_number, event_date, event_type, city, state, aircraft_make, aircraft_model, aircraft_damage, fatal_injuries, n_number
  FROM 'https://openairdocs.org/data/latest/faa_incident_report.parquet'
  WHERE aircraft_model_code IN ('7102803', '7102834')
  ORDER BY event_date DESC, report_number DESC"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

Service difficulty reports · 487

See all 487 difficulty reports
Query with SQL
duckdb -csv -c "SELECT sdr_id, difficulty_date, n_number, aircraft_make, aircraft_model, part_name, part_condition, jasc_code, discrepancy
  FROM 'https://openairdocs.org/data/latest/faa_service_difficulty_report.parquet'
  WHERE aircraft_model_key = 'PA28161'
  ORDER BY difficulty_date DESC"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

STCs that may be installed · 338

Approved for this model: the STC’s model list names it on its data sheet, or a series that includes it. The registry doesn’t record which STCs an aircraft has.

See all 338 STCs
Query with SQL
duckdb -csv -c "SELECT s.stc_number, s.description, s.holder, s.status, s.status_date, m.matched_model
  FROM (
    SELECT stc_number, min(matched_model) AS matched_model
    FROM 'https://openairdocs.org/data/latest/faa_aircraft_model_stc.parquet'
    WHERE aircraft_model_code IN ('7102803', '7102834')
    GROUP BY stc_number
  ) m JOIN 'https://openairdocs.org/data/latest/faa_stc.parquet' s USING (stc_number)
  ORDER BY s.status = 'Current' DESC, s.status_date DESC, s.stc_number"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

The same model under other registry codes

Amateur-built copies and renamed makers get their own codes.

Query with SQL
duckdb -csv -c "SELECT m.code, m.manufacturer, m.model, count(g.n_number) AS aircraft
  FROM 'https://openairdocs.org/data/latest/faa_aircraft_model.parquet' m LEFT JOIN 'https://openairdocs.org/data/latest/faa_aircraft_registration.parquet' g ON g.aircraft_model_code = m.code
  WHERE m.match_key = 'PA28161' AND m.code NOT IN ('7102803', '7102834')
  GROUP BY ALL
  ORDER BY aircraft DESC
  LIMIT 12"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.