Size Composition Data Format
Size composition datasets describe the length and weight frequency distributions of fish sampled from various fisheries.
They provide important biological information used in stock assessments, growth studies, and species composition analyses.
Each record summarizes the number of fish observed within a defined length or weight class, by gear, flag, species, and spatial cell.
Most size data reported to the Commission originate from observer programs and port sampling activities.
This section focuses exclusively on aggregate size data submitted as part of the annual data submission, and does not include observer data already submitted through standard observer reports — this avoids double counting of information.
Two dedicated templates are used for reporting:
- Length Composition Template
- Weight Composition Template
Both templates share common data fields describing the year, month, gear, flag, fleet, and location (latitude and longitude of the southwest corner of the spatial cell).
Preferred resolution:
- Temporal: Monthly (for all gears)
- Spatial:
- Longline and Troll → 5° × 5°
- Purse Seine, Pole-and-Line, and other gears (e.g., ringnet, handline, gillnet) → 1° × 1°
Units:
- Length → reported in centimetres (cm)
- Weight → reported in kilograms (kg)
Each record must also specify the measurement type, which allows the SPC Scientific Services Provider (SSP) to standardize and convert between length and weight measures for analysis.
A full list of valid measurement types is available in the reference tables.
Field formatting details
- Lengths must be reported in centimetres (cm); weights must be in kilograms (kg).
- Coordinates (latitude and longitude) must represent the southwest corner of the spatial cell.
- Spatial resolution must follow the gear-specific grid (5°×5° for longline/troll, 1°×1° for other gears).
- Indicate whether measurements are rounded up or down to the nearest unit.
- Clearly describe sampling and statistical methods, including:
- Whether sampling occurred during fishing operations or at unloading.
- Details of the sampling protocol.
- Any adjustments made to the raw size data and the rationale for these.
- Report any operational changes in the fishery that could affect data interpretation but are not captured as data attributes.
- Ensure all measurement-type codes follow the approved reference table in Annex A.2.
- When citing methods, refer to the Brogan et al. (2002) Port Sampling Manual for detailed sampling procedures, species handling protocols, and estimation approaches commonly applied in SPC port sampling programmes.
Documents structure and data fields format
Size composition data are organized into two distinct categories — Length and Weight — each with its own template and documentation files.
This separation ensures clarity, consistent units, and traceability of updates.
CSV Data Templates
Two templates are provided:
- Length Frequency Template
- Weight Frequency Template
These datasets form part of the annual data submissions to the Commission and must exclude any observer data already reported separately through observer programmes.
Length Frequency Data
This dataset contains aggregate length composition (frequency) data, summarizing the number of fish observed in each length class by gear, flag, species, and spatial cell.
Each record represents a unique combination of year, month, gear type, species, and spatial cell.
Example document – Length frequency
| year | month | gear_code | flag_code | fleet_code | latitude | longitude | sp_code | length_cm | freq | meas_type |
|---|---|---|---|---|---|---|---|---|---|---|
| 2025 | 1 | L | ES | -4 | 165 | SKJ | 45 | 6 | LF |
Field descriptions – Length frequency
| Field name | Type | Format / Allowed values | Description | Mandatory |
|---|---|---|---|---|
| year | Number | YYYY | Year of sampling or landing | Yes |
| month | Number | 1–12 | Month of sampling or landing | Yes |
| gear_code | String | Single letter gear code (see gear reference table) | Fishing gear type | Yes |
| flag_code | String | 2-letter UN/LOCODE | Flag of reporting CCM | Yes |
| fleet_code | String | 2-letter code (see fleet reference table) | Sub-fleet code | Optional |
| latitude | Number | Decimal degrees (-90 to +90) with 3 decimals maximum | Latitude of the southwest corner of the spatial cell | Yes |
| longitude | Number | Decimal degrees (-180 to +180) with 3 decimals maximum | Longitude of the southwest corner of the spatial cell | Yes |
| sp_code | String | FAO 3-letter Species Code | Species code | Yes |
| length_cm | Number | Centimetres (cm) | Midpoint of the length class bin | Yes |
| freq | Number | Whole number | Number of fish observed in that length class | Yes |
| meas_type | String | See Reference Table 1 for details on measurement codes and data types. | Type of length measurement used (e.g., LF = Fork Length, LJFL = Lower Jaw Fork Length) | Yes |
Notes:
- Lengths (
length_cm) must be reported in centimetres (cm) and represent the midpoint of each length class.- The
freqfield records the number of fish within that class bin.- Coordinate values (
lat,lon) define the southwest corner of the spatial cell.- The
meas_typecode identifies the type of measurement taken (e.g., Fork, Total, Lower Jaw Fork).- Exclude any data already submitted through observer datasets.
Weight Frequency Data
This dataset contains aggregate weight composition (frequency) data, summarizing the number of fish by weight class for each fishery, species, and spatial cell.
Each record represents a unique combination of year, month, gear, flag, species, and spatial cell.
Example document – Weight frequency
| year | month | gear_code | flag_code | fleet_code | latitude | longitude | sp_code | sp_kg | freq | meas_type |
|---|---|---|---|---|---|---|---|---|---|---|
| 2025 | 10 | S | ES | 13 | 173 | YFT | 12 | 1 | WW |
Field descriptions – Weight frequency
| Field name | Type | Format / Allowed values | Description | Mandatory |
|---|---|---|---|---|
| year | Number | YYYY | Year of sampling or landing | Yes |
| month | Number | 1–12 | Month of sampling or landing | Yes |
| gear_code | String | 1–3 letters (see gear reference table | Fishing gear type | Yes |
| flag_code | String | 2-letter UN/LOCODE | Flag of reporting CCM | Yes |
| fleet_code | String | 2-letter code (see fleet reference table) | Sub-fleet code | Optional |
| latitude | Number | Decimal degrees (-90 to +90) with 3 decimals maximum | Latitude of the southwest corner of the spatial cell | Yes |
| longitude | Number | Decimal degrees (-180 to +180) with 3 decimals maximum | Longitude of the southwest corner of the spatial cell | Yes |
| sp_code | String | FAO 3-letter Species Code | Species code | Yes |
| sp_kg | Number | Kilograms (kg) | Midpoint of the weight class bin | Yes |
| freq | Number | Whole number | Number of fish observed in that weight class | Yes |
| meas_type | String | See Reference Table 1 for details on measurement codes and data types. | Type of measurement used (e.g., WW = Whole Weight, GW = Gutted Weight) | Yes |
Notes:
- Weights (
sp_kg) must be reported in kilograms (kg) and represent the midpoint of each weight class.- The
freqfield indicates how many fish fall within that weight class.- Coordinate values (
lat,lon) define the southwest corner of the spatial cell.- The
meas_typecode specifies the type of weight measurement (e.g., Whole, Gutted, Dressed).- Do not include observer data already reported separately through observer submissions.
References
Reference Table 1: Measurement codes, descriptions, and size data types (i.e., length or weight) for size data.
The commonly used types are in bold.
| meas_code | meas_desc | meas_type |
|---|---|---|
| AN | Anal fin length | L |
| BF | Bill to fork in tail | L |
| BL | Beak Length | L |
| CC | Curved carapace length | L |
| CK | Cleithrum to anterior base caudal keel | L |
| CL | Carapace length (turtles) | L |
| CW | Carapace width | L |
| CX | Cleithrum to caudal fork | L |
| EO | Posterior eye orbital to caudal fork | L |
| EV | Posterior eye orbital to vent | L |
| FF | 1st dorsal to fork in tail | L |
| FS | 1st dorsal to 2nd dorsal | L |
| GI | Girth | L |
| LF | Lower jaw to fork in tail | L |
| NM | Not measured | L |
| OW | Observer’s estimate | L |
| PC | Nose to anterior tail portion (sharks) | L |
| PF | Pectoral to fork in tail | L |
| PS | Pectoral to 2nd dorsal | L |
| SC | Straight carapace length | L |
| SL | Tip of snout to end of caudal peduncle | L |
| T1 | Finlet 1 to tail fork | L |
| T2 | Finlet 2 to tail fork | L |
| TH | Body thickness (width) | L |
| TL | Tip of snout to end of tail | L |
| TW | Total width (tips of wings - rays) | L |
| UF | Upper jaw to fork in tail | L |
| US | Upper jaw to 2nd dorsal | L |
| WL | Wing length tip of wing to wrist (birds) | L |
| FN | Weight of all fins (sharks) | W |
| FW | Fillets weight | W |
| GF | Gilled, gutted, headed, flaps removed | W |
| GG | Gilled and gutted | W |
| GH | Gutted, headed | W |
| GO | Gutted only, not gilled | W |
| GT | Gilled, gutted, tailed | W |
| GX | Gutted, headed, tailed | W |
| LW | Loin weight | W |
| OC | Weight of gills and guts only | W |
| TT | Trunk weight | W |
| WW | Whole weight | W |
Reference Table 2: Vessel gear listing
| gear_code | gear_desc |
|---|---|
| G | Drift Gillnet |
| H | Handline (large fish) |
| K | Handline (small fish) |
| L | Longline |
| N | Gillnet |
| O | Other (including artisanal troll) |
| P | Pole-and-line |
| R | Ringnet |
| S | Purse seine |
| T | Troll (albacore) |
| U | Group seine |
| V | Light boat |
| Z | Baby purse seine |
Reference Table 3: List of Fleets
| country_code | fleet_code | gear_code | is_active | ocean_codes | description |
|---|---|---|---|---|---|
| AO | NULL | O | 1 | AO | AO Other |
| AU | NULL | O | 1 | SP,SX,WP | Australia Other |
| AU | NULL | P | 1 | WX,SP,SX,WP | Australia pole-and-line |
| AU | NULL | T | 1 | WX,SP,SX,WP | Australia troll |
| AU | AF | S | 1 | WX,SP,SX,WP | Australia purse seine, inside the Australian Fishing Zone |
| AU | AU | L | 1 | WX,SP,SX,WP | Australia domestic and chartered longline |
| AU | EX | S | 1 | WX,SP,SX,WP | Australia distant-water purse seine |
| AU | JV | L | 1 | WX,SP,SX,WP | Australian joint-venture Longline |
| BZ | NULL | L | 1 | SP,SX,WP | Belize Longline |
| CA | NULL | S | 1 | SP,NP,WP | Canadian Purse seine |
| CA | NULL | T | 1 | NP,NX | Canada troll |
| CK | NULL | L | 1 | WX,SP,SX,WP | Cook Islands longline |
| CK | NULL | O | 1 | WX,SP,SX,WP | Cook Islands Artisanal |
| CK | NULL | S | 1 | WX,WP | Cook Islands purse seine |
| CN | NULL | L | 1 | WX,SP,NP,SX,NX,WP | China offshore and distant-water longline |
| CN | NULL | S | 1 | WX,WP | China purse seine |
| CN | DW | L | 1 | SP,NP,NX,SX | China distant-water longline |
| EC | NULL | S | 1 | WX,EP,WP | Ecuador Purse seine |
| EP | NULL | L | 1 | SP,NP,EP | EP Longline |
| EP | NULL | O | 1 | EP | EP Other |
| EP | NULL | P | 1 | EP | EP Pole and line |
| EP | NULL | S | 1 | EP | EP Seiner |
| EP | NULL | T | 1 | SP,NP,EP | EP Troll |
| ES | NULL | L | 1 | WX,SP,NP,SX,NX,WP | EU - Spanish Longline |
| ES | NULL | S | 1 | WX,WP | EU - Spanish purse seine |
| FJ | NULL | L | 1 | WX,SP,SX,WP | Fiji longline |
| FJ | NULL | O | 1 | WX,SP,SX,WP | Fiji Artisanal Tuna Fisheries |
| FJ | NULL | P | 1 | WX,SP,SX,WP | Fiji pole-and-line |
| FM | NULL | L | 1 | WX,SP,NP,NX,SX,WP | Federated States of Micronesia longline |
| FM | NULL | S | 1 | WX,WP | Federated States of Micronesia purse seine |
| GU | NULL | L | 1 | NP,NX,WP | Guam longline |
| ID | NULL | G | 1 | WX,SP,SX,WP | Indonesia gillnet |
| ID | NULL | H | 1 | WX,SP,SX,WP | Indonesia handline (large-fish) |
| ID | NULL | K | 1 | WX,SP,SX,WP | Indonesia small-fish hook-and-line |
| ID | NULL | L | 1 | WX,SP,SX,WP | Indonesia longline |
| ID | NULL | O | 1 | WX,SP,SX,WP | Indonesia unclassified |
| ID | NULL | P | 1 | WX,SP,SX,WP | Indonesia pole-and-line |
| ID | NULL | T | 1 | WX,SP,SX,WP | Indonesia troll |
| ID | DW | S | 1 | WX,WP | Indonesia distant-water purse seine |
| ID | ID | S | 1 | WX,WP | Indonesia domestic purse seine |
| IO | NULL | O | 1 | IO | IO Other |
| JP | NULL | G | 1 | WX,SP,NP,NX,SX,WP | Japan drift gillnet |
| JP | NULL | N | 1 | WX,SP,NP,WP | Japanese Gillnet |
| JP | NULL | O | 1 | WX,NP,NX,WP | Japanese Other |
| JP | NULL | T | 1 | WX,NP,NX,WP | Japanese Troll |
| JP | CS | L | 1 | WX,NP,NX,WP | Japan coastal fleet longline |
| JP | CS | P | 1 | WX,NP,NX,WP | Japan coastal fleet pole-and-line |
| JP | CS | S | 1 | WX,NP,NX,WP | Japan coastal fleet purse seine |
| JP | DW | P | 1 | WX,SP,NP,NX,WP | Japan offshore and distant water pole-and-line |
| JP | DW | S | 1 | WX,SP,NP,NX,WP | Japan offshore and distant-water purse seine |
| JP | JP | L | 1 | WX,SP,NP,SX,NX,WP | Japan offshore and distant water longline |
| KI | NULL | L | 1 | WX,SP,NP,SX,NX,WP | Kiribati longline |
| KI | NULL | O | 1 | SP,NX,WP | Kiribati Artisanal |
| KI | NULL | P | 1 | WX,NP,NX,WP | Kiribati pole-and-line |
| KI | NULL | S | 1 | WX,NX,WP | Kiribati purse seine |
| KR | NULL | G | 1 | WX,SP,NP,NX,SX,WP | Korea drift gillnet |
| KR | NULL | L | 1 | WX,SP,NP,SX,NX,WP | Korea longline |
| KR | NULL | S | 1 | WX,WP | Korea purse seine |
| MH | NULL | L | 1 | WX,NP,NX,WP | Marshall Islands longline |
| MH | NULL | S | 1 | WX,NX,WP | Marshall Islands purse seine |
| MX | NULL | O | 1 | WP | Mexico Other |
| MX | NULL | S | 1 | WX,WP | Mexico purse seine |
| NC | NULL | L | 1 | WX,SP,SX,WP | New Caledonia longline |
| NC | NULL | P | 1 | WX,SP,SX,WP | New Caledonia pole-and-line |
| NI | NULL | S | 1 | WP | Nicaragua purse seine |
| NP | NULL | L | 1 | SP,NP | NP Longline |
| NP | NULL | T | 1 | SP,NP | NP Troll |
| NR | NULL | L | 1 | NP,NX,WP | Nauru longline |
| NR | NULL | O | 1 | WX,SP,NX,WP | Nauru Artisanal Tuna Fisheries |
| NR | NULL | S | 1 | WX,NX,WP | Nauru purse seine |
| NU | NULL | L | 1 | SP,SX,WP | Niue longline |
| NU | NULL | O | 1 | WX,SP,SX,WP | Niue Artisanal |
| NZ | NULL | L | 1 | WX,SP,SX,WP | New Zealand longline |
| NZ | NULL | O | 1 | SP,SX,WP | New Zealand Other |
| NZ | NULL | P | 1 | WX,SP,SX,WP | New Zealand pole-and-line |
| NZ | NULL | S | 1 | WX,WP | New Zealand purse seine |
| NZ | NULL | T | 1 | WX,SP,SX,WP | New Zealand troll |
| PA | NULL | S | 1 | WP | Panama Purse seine |
| PF | NULL | L | 1 | WX,SP,SX | French Polynesia longline |
| PF | NULL | P | 1 | SP,SX | French Polynesia pole-and-line |
| PF | NULL | T | 1 | WX,SP,SX,WP | French Polynesia troll |
| PF | O | 1 | WX,SP,SX,EP,WP | French Polynesia Other | |
| PG | NULL | L | 1 | WX,SP,SX,WP | Papua New Guinea longline |
| PG | NULL | P | 1 | WX,SP,SX,WP | Papua New Guinea pole-and-line |
| PG | NULL | S | 1 | WX,SX,WP | Papua New Guinea purse seine |
| PH | NULL | G | 1 | SP,NP,WP | Philippines gillnet |
| PH | NULL | H | 1 | WX,NP,NX,WP | Philippines handline (large-fish) |
| PH | NULL | K | 1 | NP,NX,WP | Philippines handline (small-fish) |
| PH | NULL | L | 1 | WX,NP,NX,WP | Philippines domestic longline |
| PH | NULL | O | 1 | NP,NX,WP | Philippines artisanal gears (not specified) |
| PH | NULL | R | 1 | WX,NP,NX,WP | Philippines ringnet |
| PH | DW | S | 1 | WX,WP | Philippines distant-water purse seine |
| PH | PH | S | 1 | WX,NX,WP | Philippines domestic purse seine |
| PT | NULL | L | 1 | SP,SX,WP | EU - Portuguese Longline |
| PW | NULL | L | 1 | WX,NP,NX,WP | Palau longline |
| PW | NULL | P | 1 | WX,NP,NX,WP | Palau pole-and-line |
| SB | NULL | L | 1 | WX,SP,NP,SX,NX,WP | Solomon Islands longline |
| SB | NULL | P | 1 | WX,SP,SX,WP | Solomon Islands pole-and-line |
| SB | NULL | S | 1 | WX,SX,WP | Solomon Islands purse seine |
| SN | NULL | L | 1 | SP,NP,NX,WP | Senegal Longline |
| SU | NULL | L | 1 | SP,NP,NX,WP | Soviet Union longline |
| SU | NULL | S | 1 | WX,WP | Russia purse seine |
| SV | NULL | S | 1 | WP | El Salvador Purse seine |
| TK | NULL | O | 1 | WX,SP,SX,WP | Tokelau Artisanal Tuna Fisheries |
| TO | NULL | L | 1 | WX,SP,SX,WP | Tonga longline |
| TO | NULL | O | 1 | WX,SP,SX,NX,WP | Tonga Artisanal Tuna Fisheries |
| TV | NULL | L | 1 | WX,SP,SX,WP | Tuvalu longline |
| TV | NULL | O | 1 | WX,SP,SX,WP | Tuvalu Artisanal Tuna Fisheries |
| TV | NULL | P | 1 | WX,SP,SX,WP | Tuvalu pole-and-line |
| TV | NULL | S | 1 | WX,WP | Tuvalu Purse seine |
| TW | NULL | G | 1 | SP,NP,NX,SX,WP | Chinese Taipei drift gillnet |
| TW | NULL | O | 1 | NP,NX,WP | Chinese Taipei Other |
| TW | NULL | R | 1 | WX,WP | Chinese Taipei domestic SEINE |
| TW | NULL | S | 1 | WX,WP | Chinese Taipei purse seine |
| TW | DW | L | 1 | WX,SP,NP,SX,NX,WP | Chinese Taipei distant-water longline |
| TW | OD | L | 1 | NP,NX | Chinese Taipei offshore domestic longline (REDUNDANT -STLL) |
| TW | OS | L | 1 | WX,SP,NP,SX,NX,WP | Chinese Taipei small-scale Longline (STLL) |
| US | NULL | G | 1 | SP,NP | United States of America Gillnet |
| US | NULL | O | 1 | WP | United States of America (Sports fishery) |
| US | NULL | O | 1 | WP | United States of America (Unclassified) |
| US | NULL | P | 1 | SP,NP,NX,WP | United States of America Pole and line (Albacore) |
| US | NULL | S | 1 | WX,WP | United States of America purse seine |
| US | NULL | T | 1 | WX,SP,NP,SX,NX,WP | United States of America Troll (Tropical) |
| US | NULL | T | 1 | WX,SP,NP,SX,NX,WP | United States of America (Albacore) troll |
| US | AS | L | 1 | WX,SP,NP,SX,NX,WP | American Samoa longline |
| US | AS | T | 1 | WX,SP,SX,NX,WP | American Samoa (US) Troll |
| US | GU | L | 1 | WX,NP,NX,WP | Guam (US) Longline |
| US | GU | T | 1 | WX,SP,SX,NX,WP | Guam (US) Troll |
| US | HW | H | 1 | WX,NP,NX,WP | Hawaii (US) Handline |
| US | HW | L | 1 | WX,SP,NP,NX,WP | United States of America longline (Hawaii) |
| US | HW | P | 1 | SP,NP,NX,WP | Hawaii pole-and-line |
| US | HW | T | 1 | WX,NP,SX,NX,WP | Hawaii (US) Troll |
| US | HW | T | 1 | SP,NX,SX,WP | Hawaii (US) Troll and Handline |
| US | MP | L | 1 | WX,NP,NX,WP | Northern Marianas Islands (US) Longline |
| US | MP | T | 1 | WX,SP,SX,NX,WP | Northern Mariana Islands (US) troll |
| US | US | L | 1 | WX,SP,NP,NX,WP | United States of America longline |
| VN | NULL | G | 1 | WX,NP,NX,WP | Vietnamese Gillnet |
| VN | NULL | H | 1 | WX,NP,NX,WP | Vietnamese Handline |
| VN | NULL | L | 1 | WX,NP,NX,WP | Vietnamese Longline |
| VN | NULL | S | 1 | WX,NP,NX,WP | Vietnamese Purse seine |
| VU | NULL | L | 1 | WX,SP,NP,SX,NX | Vanuatu longline |
| VU | NULL | O | 1 | WX,SP,SX,WP | Vanuatu Artisanal Tuna Fisheries |
| VU | NULL | S | 1 | WX,WP | Vanuatu purse seine |
| WF | NULL | L | 1 | WX,SP,SX,WP | Wallis and Futuna Longline |
| WF | NULL | O | 1 | WX | Wallis and Futuna artisanal |
| WF | NULL | T | 1 | WX,SP,SX,WP | Wallis and Futuna Troll |
| WN | NULL | L | 1 | SP,NP | North Western Pacific longline |
| WN | NULL | P | 1 | North Western Pacific pole-and-line | |
| WN | NULL | T | 1 | SP,NP | North Western Pacific troll |
| WP | NULL | L | 1 | SP,NP,EP | WP Longline |
| WP | NULL | O | 1 | EP | WP Other |
| WP | NULL | P | 1 | EP | WP Pole and line |
| WP | NULL | S | 1 | EP | WP Purse Seine |
| WS | NULL | L | 1 | WX,SP,SX,WP | Samoa longline |