InvestigationU

OSINT

Geolocating Posts on X

X will let you search a circle drawn on a map, on specific dates. It’s the most useful operator the platform has and it isn’t in the interface anywhere.

Operator
geocode:lat,long,radius
Radius units
km or mi
Bound by date
since: and until:
Catches
Only posts with location attached

X still carries the strongest search syntax of any major platform, and geocode is the part almost nobody uses. It returns posts from a circle you define, which means you can read what people at a place were saying while something was happening there.

Media results grid from a geocoded X search around the Boston Marathon finish line on 15 April 2013
The Media tab for a half-kilometer circle at the Boston Marathon finish line, bounded to 15–16 April 2013.

That search was:

geocode:42.3493,-71.0787,0.5km since:2013-04-15 until:2013-04-16

Text posts returned by the same geocoded search, from accounts at the scene on the day
The same circle, same day, text results. Accounts on the ground, in the order they posted.

Getting the coordinates

Google Maps right-click menu showing coordinates 42.82884, -71.09203 at the top
Right-click any point in Google Maps. The coordinates sit at the top of the menu; click to copy.

Open Google Maps, right-click the spot, and the decimal coordinates appear at the top of the context menu. Click them to copy. That’s the whole step.

You can also just ask an AI assistant for a location’s coordinates, or go further and ask it to build the whole query — “give me an X geocode search for Canton, MA from 1 January 2024 to 12 August 2024, radius covering all of Canton.”

A chat assistant returning the query geocode:42.1586,-71.1441,4km since:2024-01-01 until:2024-08-12
Asked in plain English, returned ready to paste. Verify the coordinates before you trust the answer.

Do check what comes back. Assistants are confident about coordinates and are sometimes wrong, and a query centered on the wrong town returns a perfectly plausible empty result.

Building the query

The shape is geocode:latitude,longitude,radius. Radius takes km or mi.

QueryWhat it does
geocode:37.7749,-122.4194,10kmEverything within 10km of that point
geocode:37.7749,-122.4194,10km protestSame circle, containing that word
… since:2024-07-01 until:2024-07-10Bounded to those dates
… keyword1 OR keyword2Either term
… keyword -excludeMinus removes a term
… lang:enEnglish only
… filter:mediaOnly posts with photos or video

Switch off Top results. X defaults to a ranked view that hides most of what you asked for. Click Latest for the chronological set, or Media when you want to see the place rather than read about it. Getting this wrong is the usual reason a good query looks like it found nothing.

Our X search builder assembles date, account, language and media filters for you if you’d rather not type the syntax.

Sizing the radius

Start tight and widen. A half-kilometer circle around a specific address gives you something readable; a ten-kilometer circle over a city gives you the city’s whole timeline, which isn’t an answer to anything.

Geocoded search results for Seabrook, New Hampshire showing local police and municipal accounts posting traffic updates
Kittery, Maine and surrounding towns over a month. Municipal and police accounts dominate, which is often exactly what you want.

Small towns surface a useful pattern: the accounts that consistently post from a place are police departments, fire departments, public works and local media. If you’re trying to establish what happened somewhere on a given day, those are the accounts to find first.

The limitation that matters

A post only appears in a geocode search if the account attached a location to it. That’s a small minority of posts, and it has been shrinking for years as platforms have moved location off by default.

So this is a tool that finds things, not one that proves absence. A geocode search that returns nothing tells you nothing at all about whether anybody was there. Treat every hit as a lead and every miss as meaningless.

You also need to be signed in. Logged out, X shows a prompt instead of results.

When you have the picture but not the place

The reverse problem — an image and no idea where it was taken — is what tools like GeoSpy attempt, estimating a location from what’s visible in the frame.

GeoSpy analysing a coastal boardwalk photo and returning Falmouth, Massachusetts with a written explanation
A photo taken at Harbor Beach in Seabrook, New Hampshire. It answered Falmouth, Massachusetts — wrong, but the reasoning about the signage and coastline was sound.

Second attempt, a library building. It identified it as a library and put the town in the wrong place — but the correct answer was sitting at the top of the Sources panel.

A sources panel showing candidate buildings and locations matched to the submitted photograph
The Sources panel is the useful part. The headline answer was wrong; the first candidate underneath it was right.
A result panel identifying a building as Westborough Public Library in Westborough, Massachusetts
Given a well-known street in Moscow it missed the building name, and again had it first in Sources.

So: not accurate enough to rely on, and worth having anyway. Read the candidate list rather than the headline, and use it to generate hypotheses you then confirm against Street View, the shape of the coastline, the signage, the vehicles and everything else in frame.

Combining the two

The real method is both directions at once. An image analysis gives you a candidate town. A geocode search of that town on the right date tells you whether anybody there was posting about the same thing. Neither is proof by itself; together they either corroborate or they don’t, and that’s a finding.

Go deeper

AI Essentials for Investigators

Using AI to sift large volumes of data quickly, improve social media intelligence gathering, spot patterns and connect dots, and work with images for clearer evidence. 90 minutes, 14 lectures, $49.99.

See the course