Turning Taiwan's lost-pet register into a map: addresses, personal data, and pets without a microchip
The sixth tool is live: Find My Pet. It is not another lost-pet group. It draws the government data on a map and adds the two things the official system cannot do — listing a pet with no microchip, and letting anyone who spots one report it without an account. (The tool itself is in Chinese.)
2026-08-25(2026-08-31 更新) 作者 William Hsu
Where the data comes from
Taiwan's Ministry of Agriculture publishes a "lost pet notices" open dataset (data.gov.tw dataset 77682), updated continuously, with more than seventy thousand records in total and about ten thousand in the last two years. Each one has breed, colour, markings, the date lost, a location as free text, and a photo URL. The official site is a text list with no map, and it only accepts cases where the animal was microchipped and the owner filed a report — plenty of cats have no chip and never enter the system at all.

Why geocoding an address is hard in Taiwan
Of the last two years of cases, 60% include a street address and 40% a house number. I first tried the free OpenStreetMap geocoder (Nominatim): with house numbers, 30 queries returned 0 hits — OSM has almost no Taiwanese house numbers. Dropping the number and keeping only the street name got about 70% down to a road.
The real answer turned out to be that individual city governments publish their own address coordinates as open data (Taipei, New Taipei, Taoyuan, Taichung, Tainan, Kaohsiung, Changhua and others — 15 counties and cities in all): 4.59 million addresses with TWD97 coordinates. I pulled them into an offline lookup table and match against it at import time, without calling any external service. The result: of 7,844 cases with a township, 2,844 resolve to a house number, 451 to a lane, 1,042 to a road segment, and the rest only to the township. Nantou, Yilan, Chiayi City, Keelung and Lienchiang do not publish address data, and Yunlin blocks automated downloads, so those stay at township level for now.
- Traps hit along the way: four different township code formats, six counties encoded in BIG5, Penghu and Kinmen on a different projection zone, English column names, rural Tainan addresses with no street name, and a download endpoint that only works over an old TLS version.
Location and personal data
The place a pet went missing is often the owner's home, so a house-number coordinate would pin somebody's address on a public map. Every published coordinate is therefore offset by a fixed random amount within 100 metres (seeded from the chip number, computed once, so repeated views cannot be averaged back to the truth) and drawn as a 300-metre circle; road-level cases use the average position of that road's addresses and say so; township-level cases are placed randomly inside the township boundary.
The free-text fields are worse. Scanning two years of data found 96 records with a full house number, and several with a mobile number, a LINE ID or the owner's name — somebody had even typed a phone number into the pet's name field. All of that is stripped automatically at import (addresses truncated to the street name). The site shows no contact details at all; to reach the owner of an official case you go back to the official site. Photos link to the official source, we store only a thumbnail and a mid-size copy, and a daily probe deletes ours when the official one goes.
Pets without a chip
An official lost report needs the chip number and the owner's national ID, so a pet without a chip cannot be reported at all. Hence the self-listing on this site: sign in with Google, no email is ever sent and no password is created; the person listing decides whether to publish a LINE ID or a phone number, and it is only visible to signed-in visitors who press "reveal", with a daily cap so it cannot be scraped in bulk. People who have found a pet can list that too. Anyone who sees the animal can report a sighting without signing in at all — position, time, photo — and it shows up on the case.
Uploaded photos have their EXIF stripped (phone photos carry GPS) and pass the same local nudity check as the photo tools.
How sighting reports are designed (live 28 Aug)
Most people will not register an account to help somebody else's dog get home. So reporting a sighting needs no login at all: press "report a sighting" on the map, tap where you saw the animal — the pin asks you to confirm and can be dragged — then fill in the time, a couple of sentences, and attach a photo.
The photo is required. The owner recognises their pet from the photo; blurred, or only the back of the animal, is fine — anything beats nothing.

After submitting, the system lists nearby open cases whose species and dates line up, and the reporter opens the photos to compare and confirms "that's the one" before it is attached to that case. Automatic matching is deliberately not done: only someone who saw the animal can tell, and a wrong guess sends false hope to somebody who is looking for their pet.
If nothing nearby matches, that is fine too — the report stays on the map as a stray sighting, so an owner can find it later and claim it. Owners of claimed cases get an email. No contact details are shown to anyone at any point.
What this data cannot be used to say
The dataset only covers chipped, reported animals, so it cannot support "which district loses the most pets" — it reflects the reporting rate, not the loss rate. Every county page says so. What the map can do is: when you find a dog, show you within thirty seconds who nearby is looking for it.
The tool in 42 seconds
Find My Pet · sources and privacy · implementation (all in Chinese)