# X (Twitter) Search Operators: Field Guide (2025)
> Built from real-world testing on the X web/mobile search bar and TweetDeck, plus the official v2 Search operator list. Syntax can change without warning; verify critical queries.
## Table of contents
## 1. Syntax and boolean logic
- **AND**: spaces = AND. `cat dog` finds posts with both.
- **OR**: uppercase OR. `word1 OR word2`.
- **NOT**: prefix `-` to terms or operators: `iphone -filter:retweets`, `@nasa -from:nasa`.
- **Grouping**: parentheses to combine: `(cats OR dogs) (video OR pic)`.
- **Order of operations**: AND first, then OR. Use parentheses when unsure.
- **Quotes and wildcard**: `"exact phrase"`; wildcard works inside quotes only: `"this is the * time this week"`.
- **Force exact token**: `+word` stops auto-correction.
- **Case/accents**: case-insensitive; accents mostly normalized in API, close on web.
## 2. Text and content (core web operators)
- Keywords/phrases/exclusions: `word1 word2`, `"exact phrase"`, `-word`.
- Question bias: a lone `?` or `traffic ?` often surfaces questions.
- Emoticons/emoji: `:)`, `:(`, or emoji behave like tokens.
- Hashtags/cashtags: `#hashtag`, `$TSLA`.
- URLs: `url:example.com` matches link or expanded URL; replace hyphens with underscores inside the value (`url:t_mobile.com`).
- Language: `lang:en` (BCP-47 codes). Web adds buckets like `lang:und`, `lang:qam`, `lang:qht`.
## 3. Accounts and network
- Authors/mentions: `from:username`, `to:username`, `@username` (combine with `-from:username` to see others).
- Lists: `list:list-id` or `list:user/list-slug` (cannot be negated).
- Verification/follow graph: `filter:verified`, `filter:blue_verified`, `filter:follows` (not negatable), `filter:social` / `filter:trusted` for trusted-network expansion.
## 4. Time and ID operators
### 4.1 Date range
- `since:YYYY-MM-DD` inclusive; `until:YYYY-MM-DD` exclusive. Combine to bound a window.
### 4.2 Date+time and unix
- Web/TweetDeck accept UTC timestamps: `since:2024-09-01_00:00:00_UTC`; `until:2024-09-02_00:00:00_UTC`.
- `since_time:UNIXSECONDS`, `until_time:UNIXSECONDS`.
### 4.3 ID-based ranges
- `since_id:TWEET_ID`, `max_id:TWEET_ID`.
- `within_time:7d` / `3h` / `5m` / `30s` for "last N units" (web only).
## 5. Geo / location
- Web/TweetDeck: `near:city`, `near:me`, `within:10km` or `5mi`, `geocode:lat,long,radius`, `place:PLACE_ID`.
- API extras: `place_country:US`, `point_radius:[lon lat radius]`, `bounding_box:[west_long south_lat east_long north_lat]`.
- Reality check: very few posts have precise geo; sparse results are normal.
## 6. Tweet type and conversation structure
### 6.1 Classic filter: operators (web)
- `filter:nativeretweets`, `include:nativeretweets`, `filter:retweets`.
- `filter:replies`, `filter:self_threads`, `filter:quote`.
- `conversation_id:TWEET_ID`, `quoted_tweet_id:TWEET_ID`, `quoted_user_id:USER_ID`.
### 6.2 is: operators (API-first, often work on web)
- `is:retweet`, `is:reply`, `is:quote`, `is:verified`.
- Common exclusions: `-is:retweet`, `-is:quote`, `-is:nullcast` (remove ads-only posts in API).
### 6.3 Direct relationships
- `in_reply_to_tweet_id:TWEET_ID`.
- `retweets_of:username`, `retweets_of_tweet_id:TWEET_ID`.
- `quotes_of_tweet_id:TWEET_ID`.
## 7. Media, links, and misc filters
### 7.1 Media type (web/TweetDeck)
- `filter:media`, `filter:images`, `filter:twimg`, `filter:videos`, `filter:native_video`.
- Legacy/specific: `filter:periscope`, `filter:vine`, `filter:consumer_video`, `filter:pro_video`, `filter:spaces`.
### 7.2 Links, mentions, hashtags, safety
- Web: `filter:links`, `filter:mentions`, `filter:news`, `filter:safe`, `filter:hashtags`.
- API: `has:links`, `has:media`, `has:images`, `has:video_link`, `has:geo`, `has:hashtags`, `has:cashtags`, `has:mentions`.
### 7.3 App / card-specific
- `source:client_name` (replace spaces/hyphens with underscores).
- `card_domain:pscp.tv`, `card_url:pscp.tv`.
- `card_name:audio`, `card_name:animated_gif`, `card_name:player`, `card_name:summary`, `card_name:summary_large_image`.
- Poll and ads cards: `card_name:poll2choice_text_only`, `poll3choice_text_only`, `poll4choice_text_only`, plus `promo_image_app` / `promo_image_convo` / `promo_video_convo` / `promo_website`.
- Note: `card_name:` searches only cover a shallow recent window.
## 8. Engagement operators
- Web style: `filter:has_engagement`; `min_retweets:X`, `min_faves:X`, `min_replies:X`; negatives flip to maximums (`-min_retweets:5`, `-min_faves:20`, `-min_replies:10`).
- API naming: `min_likes:X`, `min_reposts:X`, `min_replies:X`. Prefer these for v2 API queries.
## 9. API-only (or mostly API) operators
- Context/entity: `context:domain_id.entity_id`, `entity:"string"`.
- Advanced geo: `place:"Name"` or `place:ID`, `place_country:US`, `point_radius:[lon lat radius]`, `bounding_box:[west south east north]`.
- Structural/metadata: `conversation_id:`, `in_reply_to_tweet_id:`, `retweets_of:`, `retweets_of_tweet_id:`, `quotes_of_tweet_id:`, `list:123`, the full `has:` and `is:` families, `lang:` with explicit supported tags.
## 10. Deprecated / flaky
- `min_faves` / `min_retweets` are not guaranteed in APIs; use `min_likes` / `min_reposts` there.
- `filter:` vs `has:`: keep `filter:` for the web UI; use `has:` for new API code.
- Geo tagging is opt-in and rare; empty results do not always mean the syntax is wrong.
- `card_name:` (and some `include:` flags) cover only a recent slice of data.
## 11. Practical patterns
- Search someone's media in a window without RTs:
`from:username filter:media -is:retweet since:2024-01-01 until:2024-12-31`
[Open on X](https://x.com/search?q=from%3Ausername+filter%3Amedia+-is%3Aretweet+since%3A2024-01-01+until%3A2024-12-31)
- High-engagement posts about a topic from verified accounts:
`"your topic" filter:verified min_faves:500 -is:retweet`
(For API queries swap `min_faves` -> `min_likes` or `min_reposts`.)
[Open on X](https://x.com/search?q=%22your+topic%22+filter%3Averified+min_faves%3A500+-is%3Aretweet)
### Sources to monitor
[Developer X][1] - [X Search v2 operator list][4] - [ExportData cheat sheet][2] - [igorbrigadir reference][5] - [IFTTT API notes][6]
[1]: https://developer.x.com/en/docs/x-api/v1/rules-and-filtering/search-operators "Search operators | Docs | X Developer Platform"
[2]: https://www.exportdata.io/blog/advanced-twitter-search-operators/ "Advanced Twitter Search Operators Cheatsheet - Twitter Technical Knowledge & Research Blog | ExportData.io"
[3]: https://docs.x.com/x-api/posts/search/integrate/build-a-query "Build a query - X"
[4]: https://docs.x.com/x-api/posts/search/integrate/operators "Search Operators - X"
[5]: https://github.com/igorbrigadir/twitter-advanced-search "GitHub - igorbrigadir/twitter-advanced-search: Advanced Search for Twitter."
[6]: https://help.ifttt.com/hc/en-us/articles/18823795204763-Twitter-changes-to-search-formatting "Twitter changes to search formatting"