Data

Hate crime protections based on sexual orientation or gender identity

Equaldex
See all data and research on:

About this data

Hate crime protections based on sexual orientation or gender identity
Equaldex
Legal status of hate crime protections based on sexual orientation and/or gender identity, including laws that increase penalties for crimes motivated by bias against LGBT+ people. "Protected in some contexts" means the protection extends only to some offenses (such as assault) but not to others.
Source
Equaldex (2026)with major processing by Our World in Data
Last updated
May 14, 2026
Next expected update
May 2027
Date range
1985–2026

Sources and processing

Equaldex

Equaldex is a collaborative knowledge base for the LGBT (lesbian, gay, bisexual, transgender) movement. The site aims to crowdsource every law related to LGBT rights to provide a comprehensive and global view of the LGBT rights movement.

Retrieved on
May 15, 2026
Citation
This is the citation of the original data obtained from the source, prior to any processing or adaptation by Our World in Data. To cite data downloaded from this page, please use the suggested citation given in Reuse This Work below.
LGBT Rights by Country & Travel Guide | Equaldex. (2026). https://www.equaldex.com/

Equaldex is a collaborative knowledge base for the LGBT (lesbian, gay, bisexual, transgender) movement. The site aims to crowdsource every law related to LGBT rights to provide a comprehensive and global view of the LGBT rights movement.

Retrieved on
May 15, 2026
Citation
This is the citation of the original data obtained from the source, prior to any processing or adaptation by Our World in Data. To cite data downloaded from this page, please use the suggested citation given in Reuse This Work below.
LGBT Rights by Country & Travel Guide | Equaldex. (2026). https://www.equaldex.com/

All data and visualizations on Our World in Data rely on data sourced from one or several original data providers. Preparing this original data involves several processing steps. Depending on the data, this can include standardizing country names and world region definitions, converting units, calculating derived indicators such as per capita measures, as well as adding or adapting metadata such as the name or the description given to an indicator.

At the link below you can find a detailed description of the structure of our data pipeline, including links to all the code used to prepare data across Our World in Data.

Read about our data pipeline
Notes on our processing step for this indicator
  • We have extracted the data from the official Equaldex JSON API.
  • We combine the historical and current data extracted from the API to create a time series.
  • If Equaldex doesn't record when a status began, we only include it for the most recent year — we don't extend it backward.
  • We group some of the categories the source has defined for each issue, for further clarity in our visualizations.
  • We present this data only for sovereign states, defined by Butcher and Griffiths (2020), using the definitions of the latest year available. Greenland is the one exception: we keep it as its own country row but exclude it from regional aggregates.

How to cite this page

To cite this page overall, including any descriptions, FAQs or explanations of the data authored by Our World in Data, please use the following citation:

“Data Page: Hate crime protections based on sexual orientation or gender identity”, part of the following publication: Bastian Herre and Pablo Arriagada (2023) - “LGBT+ Rights”. Data adapted from Equaldex. Retrieved from https://archive.ourworldindata.org/20260520-180111/grapher/hate-crime-protections-based-on-sexual-orientation-or-gender-identity.html [online resource] (archived on May 20, 2026).

How to cite this data

In-line citationIf you have limited space (e.g. in data visualizations), you can use this abbreviated in-line citation:

Equaldex (2026) – with major processing by Our World in Data

Full citation

Equaldex (2026) – with major processing by Our World in Data. “Hate crime protections based on sexual orientation or gender identity – Equaldex” [dataset]. Equaldex, “Equaldex” [original data]. Retrieved May 20, 2026 from https://archive.ourworldindata.org/20260520-180111/grapher/hate-crime-protections-based-on-sexual-orientation-or-gender-identity.html (archived on May 20, 2026).

Quick download

Download the data shown in this chart as a ZIP file containing a CSV file, metadata in JSON format, and a README. The CSV file can be opened in Excel, Google Sheets, and other data analysis tools.

Data API

Use these URLs to programmatically access this chart's data and configure your requests with the options below. Our documentation provides more information on how to use the API, and you can find a few code examples below.

Data URL (CSV format)
https://ourworldindata.org/grapher/hate-crime-protections-based-on-sexual-orientation-or-gender-identity.csv?v=1&csvType=full&useColumnShortNames=false
Metadata URL (JSON format)
https://ourworldindata.org/grapher/hate-crime-protections-based-on-sexual-orientation-or-gender-identity.metadata.json?v=1&csvType=full&useColumnShortNames=false

Code examples

Examples of how to load this data into different data analysis tools.

Excel / Google Sheets
=IMPORTDATA("https://ourworldindata.org/grapher/hate-crime-protections-based-on-sexual-orientation-or-gender-identity.csv?v=1&csvType=full&useColumnShortNames=false")
Python with Pandas
import pandas as pd
import requests

# Fetch the data.
df = pd.read_csv("https://ourworldindata.org/grapher/hate-crime-protections-based-on-sexual-orientation-or-gender-identity.csv?v=1&csvType=full&useColumnShortNames=false", storage_options = {'User-Agent': 'Our World In Data data fetch/1.0'})

# Fetch the metadata
metadata = requests.get("https://ourworldindata.org/grapher/hate-crime-protections-based-on-sexual-orientation-or-gender-identity.metadata.json?v=1&csvType=full&useColumnShortNames=false").json()
R
library(jsonlite)

# Fetch the data
df <- read.csv("https://ourworldindata.org/grapher/hate-crime-protections-based-on-sexual-orientation-or-gender-identity.csv?v=1&csvType=full&useColumnShortNames=false")

# Fetch the metadata
metadata <- fromJSON("https://ourworldindata.org/grapher/hate-crime-protections-based-on-sexual-orientation-or-gender-identity.metadata.json?v=1&csvType=full&useColumnShortNames=false")
Stata
import delimited "https://ourworldindata.org/grapher/hate-crime-protections-based-on-sexual-orientation-or-gender-identity.csv?v=1&csvType=full&useColumnShortNames=false", encoding("utf-8") clear