Annual labour productivity by state and main economic sector, measured as value added per employed person.
0 views·0 downloads
Labour productivity by state is measured as value added per employed person: GDP by state and main economic sector at constant 2015 prices (to strip out the effects of inflation), divided by the number of employed persons in that state and sector.
Employed persons by state and sector are estimated by combining two sources: the Labour Force Survey, which covers the informal (household) sector, and the Economic Census (2015 and 2022), which covers the formal sector. Each source's share of total employed persons is interpolated for the years between the censuses (2016-2021) and extrapolated for the years after the latest census (2023 onwards), then applied to estimate total employed persons in each main sector. Mining and quarrying is estimated separately.
'Supra' covers production activities whose centre of economic interest spans several states, and so cannot be attributed to any one of them; in Malaysia, these are in the mining and quarrying sector. For further detail on the concepts used, please refer to the Technical Notes.
Although this indicator is classified as a measure of labour productivity, it does not refer to any notion of intrinsic labour capacity. In technical terms, it is a Single Factor Productivity measure, which implicitly includes the contributions of all other factors of production. This matters especially when comparing states: a state whose output is capital-intensive (e.g. mining in Sabah and Sarawak, or manufacturing in Terengganu) will record high value added per worker regardless of how 'hardworking' or 'skilled' its labour force is.
Value added per employed person is not available for mining and quarrying in W.P. Labuan and W.P. Putrajaya; those rows are omitted. Annual growth is computed from the levels and rounded to 1 decimal place. Data may be revised in subsequent releases, in line with revisions to GDP by state and to employment estimates.
Labour Productivity by State, 2025, the latest edition of the annual labour productivity by state statistics published by DOSM.
Annual labour productivity by state and main economic sector, measured as value added per employed person.
Name in Dataset | Variable | Definition |
|---|---|---|
series (String) | Series Type | Series type, either absolute values ('abs') or year-on-year growth ('growth_yoy') |
date (Date) | Date | The date in YYYY-MM-DD format, with MM-DD set to 01-01 as the data is at annual frequency |
state (String) | State | One of the 16 states, 'Supra' (production activities that cannot be attributed to any one state), or 'Malaysia' for the national total |
sector (String) | Economic Sector | Code for the economic sector, to be mapped using the Lookup Table: 'p0' (whole economy), 'p1' (agriculture), 'p2' (mining and quarrying), 'p3' (manufacturing), 'p4' (construction) or 'p5' (services) |
output_employment (Float) | Output per Worker | Either value added per employed person in RM at constant 2015 prices (for rows with series type 'abs') or its annual growth as a percentage (for rows with series type 'growth_yoy') |
29 Oct 2026, 12:30
29 Oct 2027, 12:30
This data is made open under the Creative Commons Attribution 4.0 International License (CC BY 4.0). A copy of the license is available Here.
Full Dataset (CSV)
Recommended for individuals seeking an Excel-friendly format.
0
Full Dataset (Parquet)
Recommended for data scientists seeking to work with data via code.
0
Connect directly to the data with Python.
# If not already installed, do: pip install pandas fastparquet
import pandas as pd
URL_DATA = 'https://storage.dosm.gov.my/labour/productivity_state.parquet'
df = pd.read_parquet(URL_DATA)
if 'date' in df.columns: df['date'] = pd.to_datetime(df['date'])
print(df)The following code is an example of how to make an API query to retrieve the data catalogue mentioned above. You can use different programming languages by switching the code accordingly. For a complete guide on possible query parameters and syntax, please refer to the official Open API Documentation.
import requests
import pprint
url = "https://api.data.gov.my/data-catalogue?id=productivity_state&limit=3"
response_json = requests.get(url=url).json()
pprint.pprint(response_json)© 2026 Public Sector Open Data