Twitter trends API: X trends by WOEID
A Twitter trends API returns X's current trending list for one place, picked by a WOEID code such as 1 for worldwide; the official X API charges $0.010 per list through GET /2/trends/by/woeid/{id}.
Short answer: X publishes trend lists for 467 places, worldwide, 62 countries and 404 cities, and its own endpoint needs an approved developer account and allows 75 calls per 15 minutes. To pull trends for any of those places with one API key, use Sorsa API's GET /trends: from $1.40 per 1,000 lists, and 100 free requests cover your first 100.
- Endpoint
GET /trends?woeid=- 1 request per place
- Price
- from $1.40 per 1,000 lists
#How the Twitter trends API works
A trends API takes a place and returns X's ranked list of the topics popular there right now, the same list the Explore tab shows to someone signed out. The place goes in as a WOEID (Where On Earth ID): a numeric location code from Yahoo's old geo database that X kept. 1 is the whole world, 23424977 the United States, 2459115 New York.
This guide does the job in code, for any place X covers and any number of them.
X's own endpoint, GET /2/trends/by/woeid/{woeid}, joined the official X API's v2 on December 8, 2023 (X's changelog (opens in a new tab)) and still answers in November 2026. On pay-per-use it costs $0.010 per request, paid from prepaid credits (X's price list (opens in a new tab)). The table sums up the rest of X's reference (opens in a new tab), checked on November 2, 2026.
| Detail | Official X API |
|---|---|
| Endpoint | GET /2/trends/by/woeid/{woeid} |
| Access | approved developer account, a Project and App, the App's Bearer token |
| Trends per call | 20 by default, up to 50 with max_trends |
| Fields | trend_name, plus tweet_count when you ask for it |
| Price | $0.010 per request |
| Rate limit | 75 requests per 15 minutes for one app |
Endpoint
- Official X API
GET /2/trends/by/woeid/{woeid}
Access
- Official X API
- approved developer account, a Project and App, the App's Bearer token
Trends per call
- Official X API
- 20 by default, up to 50 with
max_trends
Fields
- Official X API
trend_name, plustweet_countwhen you ask for it
Price
- Official X API
- $0.010 per request
Rate limit
- Official X API
- 75 requests per 15 minutes for one app
Two things are not in it. No endpoint in X's current documentation lists the places that have trends: the old v1.1 trends/available call is gone from the docs. And no call returns earlier lists, so a history of trends exists only if you store the snapshots yourself.
#Get trends for any place with Sorsa API
For trend lists in code without a developer account, use Sorsa API, a Twitter (X) API and scraper: GET /trends takes the same WOEID and returns X's list for that place in one request, from $1.40 per 1,000 lists against $10.00 on the official X API, at 20 requests per second on every plan.
-
Get a key. Sign up and copy the API key from your dashboard. The 100 free requests are already on it, with no card.
-
Pick the place. Find its WOEID in the finder further down, or use 1 for worldwide.
-
Send the request. Call
GET /trends(opens in a new tab) withwoeidin the query string and the key in theApiKeyheader.Terminal curl "https://api.sorsa.io/v3/trends?woeid=23424900" \ -H "ApiKey: YOUR_API_KEY"Response200 OK { "trends": [ { "name": "#FelizLunes", "query": "%23FelizLunes", "url": "https://x.com/search?q=%23FelizLunes" }, { "name": "Liga MX", "query": "%22Liga+MX%22", "url": "https://x.com/search?q=%22Liga+MX%22" }, { "name": "Buenos días", "query": "%22Buenos+d%C3%ADas%22", "url": "https://x.com/search?q=%22Buenos+d%C3%ADas%22" } ] } -
Read the list. Each trend has a
name(the topic as X shows it), aquery(the search behind it) and aurl(its search page on X). The order is X's ranking, so the first item is the top trend.
A 403 answer means the key is missing or out of requests, and a 401 means the key is wrong. A 429 means more than 20 requests in one second: wait a second and send it again. Failed requests are never charged, and every call returns fresh data, so two calls an hour apart give two different snapshots.
#Find the WOEID for any country or city
X publishes trend lists for 467 places: worldwide, 62 countries and 404 cities, each with its own WOEID (X's list of trend locations (opens in a new tab), unchanged when it was fetched from X again in August 2025). Every one of them works in GET /trends. A town that is not on the list has no trends of its own, so use the nearest listed city or the country.
The table holds the countries people ask about most, each with a major city; the finder under it holds all 467 places.
| Country | WOEID | Major city | City WOEID |
|---|---|---|---|
| Worldwide | 1 | — | — |
| United States | 23424977 | New York | 2459115 |
| Mexico | 23424900 | Mexico City | 116545 |
| India | 23424848 | Mumbai | 2295411 |
| Japan | 23424856 | Tokyo | 1118370 |
| United Kingdom | 23424975 | London | 44418 |
| Brazil | 23424768 | São Paulo | 455827 |
| Indonesia | 23424846 | Jakarta | 1047378 |
| Turkey | 23424969 | Istanbul | 2344116 |
| Spain | 23424950 | Madrid | 766273 |
| Australia | 23424748 | Sydney | 1105779 |
| South Korea | 23424868 | Seoul | 1132599 |
Worldwide
- WOEID
- 1
- Major city
- —
- City WOEID
- —
United States
- WOEID
- 23424977
- Major city
- New York
- City WOEID
- 2459115
Mexico
- WOEID
- 23424900
- Major city
- Mexico City
- City WOEID
- 116545
India
- WOEID
- 23424848
- Major city
- Mumbai
- City WOEID
- 2295411
Japan
- WOEID
- 23424856
- Major city
- Tokyo
- City WOEID
- 1118370
United Kingdom
- WOEID
- 23424975
- Major city
- London
- City WOEID
- 44418
Brazil
- WOEID
- 23424768
- Major city
- São Paulo
- City WOEID
- 455827
Indonesia
- WOEID
- 23424846
- Major city
- Jakarta
- City WOEID
- 1047378
Turkey
- WOEID
- 23424969
- Major city
- Istanbul
- City WOEID
- 2344116
Spain
- WOEID
- 23424950
- Major city
- Madrid
- City WOEID
- 766273
Australia
- WOEID
- 23424748
- Major city
- Sydney
- City WOEID
- 1105779
South Korea
- WOEID
- 23424868
- Major city
- Seoul
- City WOEID
- 1132599
Mexico has 23 trend cities besides its national list, 23424900: Mexico City is 116545, Guadalajara 124162 and Monterrey 134047. Type any place, or a WOEID you found elsewhere, into the finder to check it and copy the request.
| Place | List | WOEID |
|---|---|---|
| Worldwide | Worldwide | |
| Algeria | Country | |
| Algiers, Algeria | City in Algeria | |
| Argentina | Country | |
| Buenos Aires, Argentina | City in Argentina | |
| Córdoba, Argentina | City in Argentina | |
| Mendoza, Argentina | City in Argentina | |
| Rosario, Argentina | City in Argentina | |
| Australia | Country | |
| Adelaide, Australia | City in Australia | |
| Brisbane, Australia | City in Australia | |
| Canberra, Australia | City in Australia | |
| Darwin, Australia | City in Australia | |
| Melbourne, Australia | City in Australia | |
| Perth, Australia | City in Australia | |
| Sydney, Australia | City in Australia | |
| Austria | Country | |
| Vienna, Austria | City in Austria | |
| Bahrain | Country | |
| Belarus | Country | |
| Brest, Belarus | City in Belarus | |
| Gomel, Belarus | City in Belarus | |
| Grodno, Belarus | City in Belarus | |
| Minsk, Belarus | City in Belarus | |
| Belgium | Country | |
| Brazil | Country | |
| Belo Horizonte, Brazil | City in Brazil | |
| Belém, Brazil | City in Brazil | |
| Brasília, Brazil | City in Brazil | |
| Campinas, Brazil | City in Brazil | |
| Curitiba, Brazil | City in Brazil | |
| Fortaleza, Brazil | City in Brazil | |
| Goiânia, Brazil | City in Brazil | |
| Guarulhos, Brazil | City in Brazil | |
| Manaus, Brazil | City in Brazil | |
| Porto Alegre, Brazil | City in Brazil | |
| Recife, Brazil | City in Brazil | |
| Rio de Janeiro, Brazil | City in Brazil | |
| Salvador, Brazil | City in Brazil | |
| São Luís, Brazil | City in Brazil | |
| São Paulo, Brazil | City in Brazil | |
| Canada | Country | |
| Calgary, Canada | City in Canada | |
| Edmonton, Canada | City in Canada | |
| Montreal, Canada | City in Canada | |
| Ottawa, Canada | City in Canada | |
| Quebec, Canada | City in Canada | |
| Toronto, Canada | City in Canada | |
| Vancouver, Canada | City in Canada | |
| Winnipeg, Canada | City in Canada | |
| Chile | Country | |
| Concepcion, Chile | City in Chile | |
| Santiago, Chile | City in Chile | |
| Valparaiso, Chile | City in Chile | |
| Colombia | Country | |
| Barranquilla, Colombia | City in Colombia | |
| Bogotá, Colombia | City in Colombia | |
| Cali, Colombia | City in Colombia | |
| Medellín, Colombia | City in Colombia | |
| Denmark | Country | |
| Dominican Republic | Country | |
| Santo Domingo, Dominican Republic | City in Dominican Republic | |
| Ecuador | Country | |
| Guayaquil, Ecuador | City in Ecuador | |
| Quito, Ecuador | City in Ecuador | |
| Egypt | Country | |
| Alexandria, Egypt | City in Egypt | |
| Cairo, Egypt | City in Egypt | |
| Giza, Egypt | City in Egypt | |
| France | Country | |
| Bordeaux, France | City in France | |
| Lille, France | City in France | |
| Lyon, France | City in France | |
| Marseille, France | City in France | |
| Montpellier, France | City in France | |
| Nantes, France | City in France | |
| Paris, France | City in France | |
| Rennes, France | City in France | |
| Strasbourg, France | City in France | |
| Toulouse, France | City in France | |
| Germany | Country | |
| Berlin, Germany | City in Germany | |
| Bremen, Germany | City in Germany | |
| Cologne, Germany | City in Germany | |
| Dortmund, Germany | City in Germany | |
| Dresden, Germany | City in Germany | |
| Dusseldorf, Germany | City in Germany | |
| Essen, Germany | City in Germany | |
| Frankfurt, Germany | City in Germany | |
| Hamburg, Germany | City in Germany | |
| Leipzig, Germany | City in Germany | |
| Munich, Germany | City in Germany | |
| Stuttgart, Germany | City in Germany | |
| Ghana | Country | |
| Accra, Ghana | City in Ghana | |
| Kumasi, Ghana | City in Ghana | |
| Greece | Country | |
| Athens, Greece | City in Greece | |
| Thessaloniki, Greece | City in Greece | |
| Guatemala | Country | |
| Guatemala City, Guatemala | City in Guatemala | |
| India | Country | |
| Ahmedabad, India | City in India | |
| Amritsar, India | City in India | |
| Bangalore, India | City in India | |
| Bhopal, India | City in India | |
| Chennai, India | City in India | |
| Delhi, India | City in India | |
| Hyderabad, India | City in India | |
| Indore, India | City in India | |
| Jaipur, India | City in India | |
| Kanpur, India | City in India | |
| Kolkata, India | City in India | |
| Lucknow, India | City in India | |
| Mumbai, India | City in India | |
| Nagpur, India | City in India | |
| Patna, India | City in India | |
| Pune, India | City in India | |
| Rajkot, India | City in India | |
| Ranchi, India | City in India | |
| Srinagar, India | City in India | |
| Surat, India | City in India | |
| Thane, India | City in India | |
| Indonesia | Country | |
| Bandung, Indonesia | City in Indonesia | |
| Bekasi, Indonesia | City in Indonesia | |
| Depok, Indonesia | City in Indonesia | |
| Jakarta, Indonesia | City in Indonesia | |
| Makassar, Indonesia | City in Indonesia | |
| Medan, Indonesia | City in Indonesia | |
| Palembang, Indonesia | City in Indonesia | |
| Pekanbaru, Indonesia | City in Indonesia | |
| Semarang, Indonesia | City in Indonesia | |
| Surabaya, Indonesia | City in Indonesia | |
| Tangerang, Indonesia | City in Indonesia | |
| Ireland | Country | |
| Cork, Ireland | City in Ireland | |
| Dublin, Ireland | City in Ireland | |
| Galway, Ireland | City in Ireland | |
| Israel | Country | |
| Haifa, Israel | City in Israel | |
| Jerusalem, Israel | City in Israel | |
| Tel Aviv, Israel | City in Israel | |
| Italy | Country | |
| Bologna, Italy | City in Italy | |
| Genoa, Italy | City in Italy | |
| Milan, Italy | City in Italy | |
| Naples, Italy | City in Italy | |
| Palermo, Italy | City in Italy | |
| Rome, Italy | City in Italy | |
| Turin, Italy | City in Italy | |
| Japan | Country | |
| Chiba, Japan | City in Japan | |
| Fukuoka, Japan | City in Japan | |
| Hamamatsu, Japan | City in Japan | |
| Hiroshima, Japan | City in Japan | |
| Kawasaki, Japan | City in Japan | |
| Kitakyushu, Japan | City in Japan | |
| Kobe, Japan | City in Japan | |
| Kumamoto, Japan | City in Japan | |
| Kyoto, Japan | City in Japan | |
| Nagoya, Japan | City in Japan | |
| Niigata, Japan | City in Japan | |
| Okayama, Japan | City in Japan | |
| Okinawa, Japan | City in Japan | |
| Osaka, Japan | City in Japan | |
| Sagamihara, Japan | City in Japan | |
| Saitama, Japan | City in Japan | |
| Sapporo, Japan | City in Japan | |
| Sendai, Japan | City in Japan | |
| Takamatsu, Japan | City in Japan | |
| Tokyo, Japan | City in Japan | |
| Yokohama, Japan | City in Japan | |
| Jordan | Country | |
| Amman, Jordan | City in Jordan | |
| Kenya | Country | |
| Mombasa, Kenya | City in Kenya | |
| Nairobi, Kenya | City in Kenya | |
| Kuwait | Country | |
| Latvia | Country | |
| Riga, Latvia | City in Latvia | |
| Lebanon | Country | |
| Malaysia | Country | |
| Hulu Langat, Malaysia | City in Malaysia | |
| Ipoh, Malaysia | City in Malaysia | |
| Johor Bahru, Malaysia | City in Malaysia | |
| Kajang, Malaysia | City in Malaysia | |
| Klang, Malaysia | City in Malaysia | |
| Kuala Lumpur, Malaysia | City in Malaysia | |
| Petaling, Malaysia | City in Malaysia | |
| Mexico | Country | |
| Acapulco, Mexico | City in Mexico | |
| Aguascalientes, Mexico | City in Mexico | |
| Chihuahua, Mexico | City in Mexico | |
| Ciudad Juarez, Mexico | City in Mexico | |
| Culiacán, Mexico | City in Mexico | |
| Ecatepec de Morelos, Mexico | City in Mexico | |
| Guadalajara, Mexico | City in Mexico | |
| Hermosillo, Mexico | City in Mexico | |
| León, Mexico | City in Mexico | |
| Mexicali, Mexico | City in Mexico | |
| Mexico City, Mexico | City in Mexico | |
| Monterrey, Mexico | City in Mexico | |
| Morelia, Mexico | City in Mexico | |
| Mérida, Mexico | City in Mexico | |
| Naucalpan de Juárez, Mexico | City in Mexico | |
| Nezahualcóyotl, Mexico | City in Mexico | |
| Puebla, Mexico | City in Mexico | |
| Querétaro, Mexico | City in Mexico | |
| Saltillo, Mexico | City in Mexico | |
| San Luis Potosí, Mexico | City in Mexico | |
| Tijuana, Mexico | City in Mexico | |
| Toluca, Mexico | City in Mexico | |
| Zapopan, Mexico | City in Mexico | |
| Netherlands | Country | |
| Amsterdam, Netherlands | City in Netherlands | |
| Den Haag, Netherlands | City in Netherlands | |
| Rotterdam, Netherlands | City in Netherlands | |
| Utrecht, Netherlands | City in Netherlands | |
| New Zealand | Country | |
| Auckland, New Zealand | City in New Zealand | |
| Nigeria | Country | |
| Benin City, Nigeria | City in Nigeria | |
| Ibadan, Nigeria | City in Nigeria | |
| Kaduna, Nigeria | City in Nigeria | |
| Kano, Nigeria | City in Nigeria | |
| Lagos, Nigeria | City in Nigeria | |
| Port Harcourt, Nigeria | City in Nigeria | |
| Norway | Country | |
| Bergen, Norway | City in Norway | |
| Oslo, Norway | City in Norway | |
| Oman | Country | |
| Muscat, Oman | City in Oman | |
| Pakistan | Country | |
| Faisalabad, Pakistan | City in Pakistan | |
| Karachi, Pakistan | City in Pakistan | |
| Lahore, Pakistan | City in Pakistan | |
| Multan, Pakistan | City in Pakistan | |
| Rawalpindi, Pakistan | City in Pakistan | |
| Panama | Country | |
| Peru | Country | |
| Lima, Peru | City in Peru | |
| Philippines | Country | |
| Antipolo, Philippines | City in Philippines | |
| Cagayan de Oro, Philippines | City in Philippines | |
| Calocan, Philippines | City in Philippines | |
| Cebu City, Philippines | City in Philippines | |
| Davao City, Philippines | City in Philippines | |
| Makati, Philippines | City in Philippines | |
| Manila, Philippines | City in Philippines | |
| Pasig, Philippines | City in Philippines | |
| Quezon City, Philippines | City in Philippines | |
| Taguig, Philippines | City in Philippines | |
| Zamboanga City, Philippines | City in Philippines | |
| Poland | Country | |
| Gdańsk, Poland | City in Poland | |
| Kraków, Poland | City in Poland | |
| Lodz, Poland | City in Poland | |
| Poznań, Poland | City in Poland | |
| Warsaw, Poland | City in Poland | |
| Wroclaw, Poland | City in Poland | |
| Portugal | Country | |
| Puerto Rico | Country | |
| Qatar | Country | |
| Russia | Country | |
| Chelyabinsk, Russia | City in Russia | |
| Irkutsk, Russia | City in Russia | |
| Kazan, Russia | City in Russia | |
| Khabarovsk, Russia | City in Russia | |
| Krasnodar, Russia | City in Russia | |
| Krasnoyarsk, Russia | City in Russia | |
| Moscow, Russia | City in Russia | |
| Nizhny Novgorod, Russia | City in Russia | |
| Novosibirsk, Russia | City in Russia | |
| Omsk, Russia | City in Russia | |
| Perm, Russia | City in Russia | |
| Rostov-on-Don, Russia | City in Russia | |
| Saint Petersburg, Russia | City in Russia | |
| Samara, Russia | City in Russia | |
| Ufa, Russia | City in Russia | |
| Vladivostok, Russia | City in Russia | |
| Volgograd, Russia | City in Russia | |
| Voronezh, Russia | City in Russia | |
| Yekaterinburg, Russia | City in Russia | |
| Saudi Arabia | Country | |
| Ahsa, Saudi Arabia | City in Saudi Arabia | |
| Dammam, Saudi Arabia | City in Saudi Arabia | |
| Jeddah, Saudi Arabia | City in Saudi Arabia | |
| Mecca, Saudi Arabia | City in Saudi Arabia | |
| Medina, Saudi Arabia | City in Saudi Arabia | |
| Riyadh, Saudi Arabia | City in Saudi Arabia | |
| Singapore | Country | |
| Singapore, Singapore | City in Singapore | |
| South Africa | Country | |
| Cape Town, South Africa | City in South Africa | |
| Durban, South Africa | City in South Africa | |
| Johannesburg, South Africa | City in South Africa | |
| Port Elizabeth, South Africa | City in South Africa | |
| Pretoria, South Africa | City in South Africa | |
| Soweto, South Africa | City in South Africa | |
| South Korea | Country | |
| Ansan, South Korea | City in South Korea | |
| Bucheon, South Korea | City in South Korea | |
| Busan, South Korea | City in South Korea | |
| Changwon, South Korea | City in South Korea | |
| Daegu, South Korea | City in South Korea | |
| Daejeon, South Korea | City in South Korea | |
| Goyang, South Korea | City in South Korea | |
| Gwangju, South Korea | City in South Korea | |
| Incheon, South Korea | City in South Korea | |
| Seongnam, South Korea | City in South Korea | |
| Seoul, South Korea | City in South Korea | |
| Suwon, South Korea | City in South Korea | |
| Ulsan, South Korea | City in South Korea | |
| Yongin, South Korea | City in South Korea | |
| Spain | Country | |
| Barcelona, Spain | City in Spain | |
| Bilbao, Spain | City in Spain | |
| Las Palmas, Spain | City in Spain | |
| Madrid, Spain | City in Spain | |
| Malaga, Spain | City in Spain | |
| Murcia, Spain | City in Spain | |
| Palma, Spain | City in Spain | |
| Seville, Spain | City in Spain | |
| Valencia, Spain | City in Spain | |
| Zaragoza, Spain | City in Spain | |
| Sweden | Country | |
| Gothenburg, Sweden | City in Sweden | |
| Stockholm, Sweden | City in Sweden | |
| Switzerland | Country | |
| Geneva, Switzerland | City in Switzerland | |
| Lausanne, Switzerland | City in Switzerland | |
| Zurich, Switzerland | City in Switzerland | |
| Thailand | Country | |
| Bangkok, Thailand | City in Thailand | |
| Turkey | Country | |
| Adana, Turkey | City in Turkey | |
| Ankara, Turkey | City in Turkey | |
| Antalya, Turkey | City in Turkey | |
| Bursa, Turkey | City in Turkey | |
| Diyarbakır, Turkey | City in Turkey | |
| Eskişehir, Turkey | City in Turkey | |
| Gaziantep, Turkey | City in Turkey | |
| Istanbul, Turkey | City in Turkey | |
| Izmir, Turkey | City in Turkey | |
| Kayseri, Turkey | City in Turkey | |
| Konya, Turkey | City in Turkey | |
| Mersin, Turkey | City in Turkey | |
| Ukraine | Country | |
| Dnipropetrovsk, Ukraine | City in Ukraine | |
| Donetsk, Ukraine | City in Ukraine | |
| Kharkiv, Ukraine | City in Ukraine | |
| Kyiv, Ukraine | City in Ukraine | |
| Lviv, Ukraine | City in Ukraine | |
| Odesa, Ukraine | City in Ukraine | |
| Zaporozhye, Ukraine | City in Ukraine | |
| United Arab Emirates | Country | |
| Abu Dhabi, United Arab Emirates | City in United Arab Emirates | |
| Dubai, United Arab Emirates | City in United Arab Emirates | |
| Sharjah, United Arab Emirates | City in United Arab Emirates | |
| United Kingdom | Country | |
| Belfast, United Kingdom | City in United Kingdom | |
| Birmingham, United Kingdom | City in United Kingdom | |
| Blackpool, United Kingdom | City in United Kingdom | |
| Bournemouth, United Kingdom | City in United Kingdom | |
| Brighton, United Kingdom | City in United Kingdom | |
| Bristol, United Kingdom | City in United Kingdom | |
| Cardiff, United Kingdom | City in United Kingdom | |
| Coventry, United Kingdom | City in United Kingdom | |
| Derby, United Kingdom | City in United Kingdom | |
| Edinburgh, United Kingdom | City in United Kingdom | |
| Glasgow, United Kingdom | City in United Kingdom | |
| Hull, United Kingdom | City in United Kingdom | |
| Leeds, United Kingdom | City in United Kingdom | |
| Leicester, United Kingdom | City in United Kingdom | |
| Liverpool, United Kingdom | City in United Kingdom | |
| London, United Kingdom | City in United Kingdom | |
| Manchester, United Kingdom | City in United Kingdom | |
| Middlesbrough, United Kingdom | City in United Kingdom | |
| Newcastle, United Kingdom | City in United Kingdom | |
| Nottingham, United Kingdom | City in United Kingdom | |
| Plymouth, United Kingdom | City in United Kingdom | |
| Portsmouth, United Kingdom | City in United Kingdom | |
| Preston, United Kingdom | City in United Kingdom | |
| Sheffield, United Kingdom | City in United Kingdom | |
| Stoke-on-Trent, United Kingdom | City in United Kingdom | |
| Swansea, United Kingdom | City in United Kingdom | |
| United States | Country | |
| Albuquerque, United States | City in United States | |
| Atlanta, United States | City in United States | |
| Austin, United States | City in United States | |
| Baltimore, United States | City in United States | |
| Baton Rouge, United States | City in United States | |
| Birmingham, United States | City in United States | |
| Boston, United States | City in United States | |
| Charlotte, United States | City in United States | |
| Chicago, United States | City in United States | |
| Cincinnati, United States | City in United States | |
| Cleveland, United States | City in United States | |
| Colorado Springs, United States | City in United States | |
| Columbus, United States | City in United States | |
| Dallas-Ft. Worth, United States | City in United States | |
| Denver, United States | City in United States | |
| Detroit, United States | City in United States | |
| El Paso, United States | City in United States | |
| Fresno, United States | City in United States | |
| Greensboro, United States | City in United States | |
| Harrisburg, United States | City in United States | |
| Honolulu, United States | City in United States | |
| Houston, United States | City in United States | |
| Indianapolis, United States | City in United States | |
| Jackson, United States | City in United States | |
| Jacksonville, United States | City in United States | |
| Kansas City, United States | City in United States | |
| Las Vegas, United States | City in United States | |
| Long Beach, United States | City in United States | |
| Los Angeles, United States | City in United States | |
| Louisville, United States | City in United States | |
| Memphis, United States | City in United States | |
| Mesa, United States | City in United States | |
| Miami, United States | City in United States | |
| Milwaukee, United States | City in United States | |
| Minneapolis, United States | City in United States | |
| Nashville, United States | City in United States | |
| New Haven, United States | City in United States | |
| New Orleans, United States | City in United States | |
| New York, United States | City in United States | |
| Norfolk, United States | City in United States | |
| Oklahoma City, United States | City in United States | |
| Omaha, United States | City in United States | |
| Orlando, United States | City in United States | |
| Philadelphia, United States | City in United States | |
| Phoenix, United States | City in United States | |
| Pittsburgh, United States | City in United States | |
| Portland, United States | City in United States | |
| Providence, United States | City in United States | |
| Raleigh, United States | City in United States | |
| Richmond, United States | City in United States | |
| Sacramento, United States | City in United States | |
| Salt Lake City, United States | City in United States | |
| San Antonio, United States | City in United States | |
| San Diego, United States | City in United States | |
| San Francisco, United States | City in United States | |
| San Jose, United States | City in United States | |
| Seattle, United States | City in United States | |
| St. Louis, United States | City in United States | |
| Tallahassee, United States | City in United States | |
| Tampa, United States | City in United States | |
| Tucson, United States | City in United States | |
| Virginia Beach, United States | City in United States | |
| Washington, United States | City in United States | |
| Venezuela | Country | |
| Barcelona, Venezuela | City in Venezuela | |
| Barquisimeto, Venezuela | City in Venezuela | |
| Caracas, Venezuela | City in Venezuela | |
| Ciudad Guayana, Venezuela | City in Venezuela | |
| Maracaibo, Venezuela | City in Venezuela | |
| Maracay, Venezuela | City in Venezuela | |
| Maturín, Venezuela | City in Venezuela | |
| Turmero, Venezuela | City in Venezuela | |
| Valencia, Venezuela | City in Venezuela | |
| Vietnam | Country | |
| Can Tho, Vietnam | City in Vietnam | |
| Da Nang, Vietnam | City in Vietnam | |
| Hai Phong, Vietnam | City in Vietnam | |
| Hanoi, Vietnam | City in Vietnam | |
| Ho Chi Minh City, Vietnam | City in Vietnam |
No place on X's list matches. Try the country's name instead.
Request for Mexico
curl "https://api.sorsa.io/v3/trends?woeid=23424900" -H "ApiKey: YOUR_API_KEY"
All 467 places X publishes trends for, from X's own list. Pick a WOEID to put it into the request.
Good to know
WOEID tables copied around the web mix up codes that sit next to each other: 23424868 is South Korea, not Mexico (23424900); 23424775 is Canada, not Australia (23424748); 455825 is Rio de Janeiro, not São Paulo (455827); 1105779 is Sydney, not Tokyo (1118370). A wrong code still returns a valid list, just for another place, so check the name before you store it.
City coverage is uneven. The United States has 63 trend cities, the United Kingdom 26 and Mexico 23, while 9 of the 62 countries, among them Belgium, Denmark and Portugal, have a national list only. X keeps no lists for states or regions.
#Get the posts behind each trend
A trend's query is a ready search: send it to POST /search-tweets (opens in a new tab) and Sorsa API returns the posts behind the trend, about 20 per request, each with its author's full profile. "order": "popular" gives the posts X ranks as Top; "latest" gives the newest first.
The script below reads Mexico's list and prints the three top posts for each of its five top trends. The code decodes a URL-encoded query before it goes into the search.
import requests
from urllib.parse import unquote_plus
API = "https://api.sorsa.io/v3"
HEADERS = {"ApiKey": "YOUR_API_KEY"}
MEXICO = 23424900
def get_trends(woeid):
r = requests.get(f"{API}/trends", params={"woeid": woeid},
headers=HEADERS, timeout=30)
r.raise_for_status()
return r.json()["trends"]
def top_posts(query):
body = {"query": query, "order": "popular"}
r = requests.post(f"{API}/search-tweets", json=body,
headers=HEADERS, timeout=30)
r.raise_for_status()
return r.json()["tweets"]
for rank, trend in enumerate(get_trends(MEXICO)[:5], start=1):
query = trend["query"]
if "%" in query: # decode a URL-encoded search
query = unquote_plus(query)
print(f"{rank}. {trend['name']}")
for post in top_posts(query)[:3]:
user = post["user"]["username"]
print(f" @{user}: {post['likes_count']} likes")
The posts are where a trends job gets expensive on the official X API. Each post costs $0.005, and from November 22, 2026 each post's author is billed as a $0.010 user read too (X's notice (opens in a new tab)), so 1,000 posts with their authors cost $15.00. For the posts behind trends, use Sorsa API: from $0.07 per 1,000 results, author profiles included.
Official X API
$1,500
for 100K posts
$0.015 per post with its author
Sorsa API
from$7
for 100K posts
from $0.07 per 1,000
To narrow a trend's posts by language, date or likes, add X operators to the query; the Twitter search API guide covers paging, and the Twitter search operators list has every filter.
#Keep a history of trends
No trends endpoint returns past lists, the official one included: each call is a snapshot of the moment, so a trend history is the snapshots you keep. Poll the places you track on a schedule and save each list with its time and rank.
X publishes no interval at which it recomputes the lists. Hourly snapshots suit dashboards and research; a newsroom watching breaking topics polls every 5 to 15 minutes. The script saves one snapshot of four places into SQLite.
import sqlite3
import time
from datetime import datetime, timezone
import requests
API = "https://api.sorsa.io/v3/trends"
HEADERS = {"ApiKey": "YOUR_API_KEY"}
PLACES = {"Worldwide": 1, "United States": 23424977,
"Mexico": 23424900, "Japan": 23424856}
db = sqlite3.connect("trends.db")
db.execute("""CREATE TABLE IF NOT EXISTS trends (
taken_at TEXT, woeid INTEGER, place TEXT,
rank INTEGER, name TEXT, query TEXT)""")
now = datetime.now(timezone.utc)
taken_at = now.strftime("%Y-%m-%d %H:%M:%S")
for place, woeid in PLACES.items():
params = {"woeid": woeid}
r = requests.get(API, params=params, headers=HEADERS, timeout=30)
if r.status_code == 429: # over 20 requests in one second
time.sleep(1)
r = requests.get(API, params=params, headers=HEADERS, timeout=30)
r.raise_for_status()
rows = [(taken_at, woeid, place, rank, t["name"], t["query"])
for rank, t in enumerate(r.json()["trends"], start=1)]
db.executemany("INSERT INTO trends VALUES (?, ?, ?, ?, ?, ?)", rows)
db.commit()
Run it every hour, for example from cron with 0 * * * * python3 save_trends.py. At 20 requests per second one key reads all 467 places in about 23 seconds, so even the full list fits an hourly run. After a day, one query shows what trended longest in Mexico:
SELECT name, COUNT(DISTINCT taken_at) AS hours
FROM trends
WHERE woeid = 23424900
AND taken_at >= datetime('now', '-1 day')
GROUP BY name
ORDER BY hours DESC
LIMIT 10;
For posts older than your snapshots, a trend's query also works as a search back to 2006: historical Twitter data shows how. To get an alert the moment a new topic enters a list, compare each snapshot with the one before, as in real-time Twitter monitoring.
#What trend data costs per month
Both APIs bill trend data per list, so the monthly bill is places times refreshes: 25 places every hour make 18K lists a month, $180 on the official X API and from $25.20 on Sorsa API. Pick your own numbers below.
from $25.20
a month on Sorsa API
$180
a month on the official X API
18K
trend lists a month
25 places every hour make 18K trend lists a month, which fit the Pro plan's 100K requests a month. One pass over 25 places takes about 1 second at 20 requests a second, and the schedule stays within the official limit of 75 requests per 15 minutes for one app.
Monthly cost of trend lists for a 30-day month, with the time one pass takes at each API's rate limit.
On every measure that decides a trends job, Sorsa API comes out ahead of the official X API:
| Criterion | Sorsa API | Official X API |
|---|---|---|
| Price per 1,000 trend lists | from $1.40 | $10.00 |
| Posts behind trends, per 1,000 | from $0.07, authors included | $5.00, or $15.00 with authors from Nov 22 |
| Rate limit | 20 requests per second | 75 requests per 15 minutes per app |
| One pass over all 467 places | about 23 seconds | about 90 minutes |
| Setup | one API key | approved developer account, app, Bearer token |
| X account needed | no | yes |
Price per 1,000 trend lists
- Sorsa API
- from $1.40
- Official X API
- $10.00
Posts behind trends, per 1,000
- Sorsa API
- from $0.07, authors included
- Official X API
- $5.00, or $15.00 with authors from Nov 22
Rate limit
- Sorsa API
- 20 requests per second
- Official X API
- 75 requests per 15 minutes per app
One pass over all 467 places
- Sorsa API
- about 23 seconds
- Official X API
- about 90 minutes
Setup
- Sorsa API
- one API key
- Official X API
- approved developer account, app, Bearer token
X account needed
- Sorsa API
- no
- Official X API
- yes
For a trends dashboard, a newsroom feed or a research archive, use Sorsa API: the same WOEIDs as X, about 7 times less per list, and the posts behind every trend from $0.07 per 1,000. Sorsa API never asks for your X login, so your own account is never at risk.
#Pull your first trend list
A trend list for any place is one request: pick the WOEID, call GET /trends, and send the top queries to POST /search-tweets for the posts behind them. Sorsa API does both with one key, from $1.40 per 1,000 lists and $0.07 per 1,000 posts, and the 100 free requests every new account gets cover your first 100 lists, with no card and no expiry.
#FAQ
What is the best API for Twitter trends?
Sorsa API is the best fit for Twitter trends in code. GET /trends returns X's list for any of 467 places by WOEID, from $1.40 per 1,000 lists against $10.00 on the official X API, at 20 requests per second with one API key and no developer account. The same key turns each trend into posts through POST /search-tweets, from $0.07 per 1,000 with authors included.
Is there a free Twitter trends API?
The official X API has no free tier: every trends call costs $0.010 from prepaid credits. Sorsa API gives every new account 100 free requests with no card and no expiry, which is 100 trend lists for any places you choose. To look at the lists without code, our free trends page shows worldwide and 25 countries, read every hour, with the last 24 hours.
Can I get historical Twitter trends?
No API returns past trend lists, the official X API included: each call is a snapshot of the current list. To see what trended last week, you need snapshots stored at the time, for example an hourly job that saves every list with its time and rank. On Sorsa API that job costs from about $1 a month for each place polled every hour.
Can I get Twitter trends for a city or a US state?
For a city, yes, if it is one of X's 404 trend cities: New York is 2459115, Los Angeles 2442047 and Mexico City 116545. X keeps no lists for US states or other regions, so for a state use its largest trend city or the national list, 23424977. Sorsa API's GET /trends takes any of these WOEIDs.
What replaces trendsByPlace in twitter-api-v2?
trendsByPlace() in the twitter-api-v2 package for Node.js calls X's old v1.1 trends/place endpoint, which X's current documentation no longer lists. Its v2 counterpart in the same package is client.v2.trendsByWoeid(23424900), which calls GET /2/trends/by/woeid/{id} with an app-only Bearer token at $0.010 per call. Without an X developer account, one request to Sorsa API's GET /trends?woeid=23424900 returns Mexico's list.
#How we checked
On November 2, 2026 we read X's documentation for the trends endpoint (the introduction and the reference), its rate limits, its pay-per-use price list and its changelog, and X's October notice on billing for expansions. Every WOEID on this page was checked against X's own list of 467 trend locations as X returned it in August 2025, and the twitter-api-v2 answer against that package's documentation. Every Sorsa API request was written from our live API reference for /trends and /search-tweets; the response is an example with generic trend names, and prices per 1,000 come from the request rates on our pricing page.
Sources
- Trends by WOEID, X API documentation (opens in a new tab)
- Get Trends by WOEID, X API reference (opens in a new tab)
- X API pay-per-usage pricing (opens in a new tab)
- X API rate limits (opens in a new tab)
- X API changelog (opens in a new tab)
- X API PPU expansions update, X Developer Community (opens in a new tab)
- X's list of trend locations with WOEIDs (opens in a new tab)
- Trends List, Sorsa API reference (opens in a new tab)