Independent New Hampshire Journalism · Northfield, NHA reader sent Granite State Report seven phone videos of lights over the ocean at dusk on October 9. GSR’s UFO Data Analysis Engine took all 16,590 frames. The shapes trace back to the camera. Most of the lights hold their places the way stars and shore lights do. One red light flashes on an airplane beacon’s beat and moves against the stars, and one steady point crosses them in a straight line. The files carry no location.
The note came through Something You Can’t Explain, GSR’s drop box for footage people cannot account for, and it was short. “Really weird shapes in sky appear and disappear,” the reader wrote. Seven videos came with it, shot over 17 minutes on one October evening, and a request to say what GSR could find.
Here is what GSR found. The seven clips hold points of light, not shapes. Every shape in them is the path a point of light draws while the phone moves, and the engine can show it: when the camera swings fast, every bright light in the frame, on the shore and in the sky alike, drops out more often and smears longer. Most of the lights keep their spacing the way stars and shore lights do. Two do not. In the fourth clip a red light comes back every 1.08 seconds for 21 seconds and moves against the stars on a straight line, which is how an airplane’s anticollision beacon behaves. In the seventh, a steady point crosses the stars on a straight line with no flash, which fits a satellite or a high airplane. Nothing the engine measured needs an unexplained cause. What the files cannot supply is a place.
Watch all seven clips in full further down this page, with the sound removed and people on the beach blurred.
What came in
The reader asked that nothing identify them. The note names Lowell, Mass., gives the direction faced as “North?” with the question mark, and says the lights lasted about ten minutes. It also says the shapes showed up on cameras at the reader’s workplace and that the reader filmed what those cameras showed.
The seven files are camera originals from an iPhone 18 Pro running software 27.0, recorded on October 9, 2026, from 6:49:44 to 7:07:15 p.m. Eastern time. Together they run 11 minutes 31 seconds across that 17½-minute stretch, close to the reader’s ten minutes. Each is 10-bit high-dynamic-range video in portrait. GSR fingerprinted every file with SHA-256 on arrival; the hashes are in the fact table. None carries a location tag.

| # | File | Start | Length | Frames | Tracks | Close calls | What it shows |
|---|---|---|---|---|---|---|---|
| 1 | IMG_8898 | 6:49:44 | 4:35 | 6,590 | 6,745 | 38% | Dark headland with a bright point above it; later a group of four lights near the waterline |
| 2 | IMG_8899 | 6:55:54 | 2:32 | 3,649 | 2,773 | 48% | Wet beach and a lit point of land; the picture brightens at 0:44 |
| 3 | IMG_8900 | 6:58:59 | 0:47 | 1,121 | 917 | 54% | Lit shoreline under a blue sky |
| 4 | IMG_8901 | 7:01:36 | 1:14 | 1,772 | 901 | 52% | Sky over the shoreline; the red light on a 1.08-second beat |
| 5 | IMG_8902 | 7:03:16 | 1:20 | 1,930 | 2,181 | 37% | Shoreline lights, then open sky |
| 6 | IMG_8903 | 7:04:59 | 0:35 | 836 | 728 | 58% | Sky above a dark wall, then the shoreline |
| 7 | IMG_8904 | 7:06:46 | 0:29 | 692 | 201 | 62% | Sky with faint stars; one light crossing them in a straight line |
| All seven | 6:49:44 to 7:07:15 | 11:31 | 16,590 | 14,446 | 43% |
The engine read every frame. On each one it found the points brighter than the sky around them, measured how the camera moved since the frame before, linked the points into tracks, and tested each track against the ordinary explanations: a star or planet or fixed light, an aircraft, a satellite, a reflection inside the lens, a bug or bird near the lens, a meteor. It scores those and prints the evidence; it does not pick one. GSR ran the engine, version 0.4.0, over the files in two passes built separately, the first on three of the clips and the second on all seven, and this article says where the two agree and where they do not.
Where were they shot?
The videos do not show a workplace camera screen. They are handheld clips on an ocean beach: surf, a wide wet beach, a dark headland with houses on it, a long shoreline of lights across the water, and a few people on the sand. Lowell is an inland city where the Concord River meets the Merrimack, 25 miles northwest of Boston. Either the beach is somewhere the note does not name, or the reader sent these clips in place of the workplace recordings, or both exist. Only the reader can say.
It matters because every sky check starts from a spot. The aircraft overhead and the satellites passing are computed from a place and a time. The time is in the files. The place is not, so GSR could not run a flight-record or satellite check.
The sky that evening
Some of the sky does not need the exact spot, because it barely changes across a few dozen miles; GSR checked Lowell, Hampton Beach and Boston Harbor and found the positions below within half a degree of one another. Seen from Lowell, the sun set at 6:13 p.m. and civil twilight ended at 6:41, according to the U.S. Naval Observatory. When the first clip started the sun was 7.6 degrees below the horizon, in the deep blue of nautical twilight; by the last it was nearly 11 degrees down. The moon had set at 5:31, 1 percent lit.

Saturn was the planet to know. It had reached opposition five days earlier, on October 4, when it rises at sunset and outshines every star in the eastern sky, according to EarthSky. On October 9 it cleared the horizon about 6:09 p.m., a few degrees north of due east, and climbed from 7.6 degrees at the first clip to about 11 at the last. From a beach facing the open Atlantic it would hang low over the water: a steady, slightly yellow point that seems to wait there for an hour. Vega was nearly overhead and Arcturus low in the west.

Why lights appear and disappear
The engine found three ordinary reasons in these files, and two of them are the camera.
The first is exposure. For the first 44 seconds of the second clip the picture is dark and a few points per frame clear the engine’s threshold. Between 44 and 48 seconds the whole frame brightens, by a factor of about two in both passes, and the count jumps to the engine’s cap on every frame after. The first pass measured a median of 3 points a frame before and its cap of 300 after; the second, a median of 8 before and its cap of 60 after. Whether the phone changed its exposure or the reader turned toward a brighter part of the sky, the clip cannot say. Either way, lights “appear” because the camera changed what it records.

The second is the hand. For most of the first minute of the first clip the phone is zoomed toward the dark headland, and above it sits one bright, yellow-white point. In frame after frame the point takes a new form: a dash, a hook, a comma, a small check mark. Nothing about the light changes when that happens. The camera does. A phone exposure lasts a fraction of a second, and a hand that moves during that fraction drags each point of light into a line in the shape of the motion.

The engine can test that on every bright light in all seven clips at once. It followed bright tracks through 174,146 frames in which it knew how far the camera had moved since the frame before. When the camera held within 2 pixels, the light was found in 69 percent of those frames. When the camera swung more than 80 pixels, it was found in 30 percent. The lights that were found stretched as the swing grew, from 1.6 times as long as wide to 1.9. That is appearing and disappearing, and it is shape-changing, and it rises and falls with the hand holding the phone. The shoreline lights, which nobody would call a UFO, do it too.

The third reason is the lights themselves.
Lights that keep their places
Late in the first clip the camera pulls back toward the horizon and holds on a group of four lights, two of them bright, just above the waterline left of the headland. Stack every frame from 2:54 to 2:59 into one picture and each light draws the same tangle, because the hand moved them all together. Line the frames up on one of the bright lights instead and the tangles collapse to points and the headland comes out sharp. Over those five seconds the two bright lights stayed 187 to 202 pixels apart, and the line between them held its angle to within 1.4 degrees. Things flying on their own do not hold a formation that well against a handheld camera. Points fixed in the sky, or fixed on land across the water, do.

What those points are is a closer call. Saturn was the brightest thing in the eastern sky that hour, and a light low over the ocean near due east would fit it. But no star bright enough to show in twilight sat near Saturn, so a matched pair cannot be Saturn and a neighbor. A pair just above the far waterline also fits lights on a point of land, a tower or an anchored ship. Without a compass heading or a known beach, GSR will not choose.
The red light that keeps time
The fourth clip, IMG_8901, is pointed up into the sky above the lit shoreline. Its clearest object is a small cluster the engine followed from 2.3 to 24 seconds. Enlarged, it shows a white point, a red one, and in some frames a green-tinted point beside the white. Federal rules put a red position light on an airplane’s left side and a green one on its right, with a white light at the rear, and require position lights from sunset to sunrise.

Color alone proves little: a bright star low in the sky can flash colors as it twinkles. The difference is timing. Both passes measured, on every frame, how much of the cluster’s brightness above the sky is red. The first pass counted 22 separate red episodes, a median 1.04 seconds apart, with the pattern repeating most strongly at 1.08 seconds. The second pass took the same measurement on 509 lit frames and compared the series with itself at every delay. It lines up best at 1.08 seconds, again at 2.17 and again at 3.25, and lines up worst at about half a beat, 0.54 seconds. That is a light keeping one steady rhythm, about 55 flashes a minute, inside the 40 to 100 a minute that federal rules set for an airplane’s anticollision lights. Twinkling throws colors at random. This light kept time for 21 seconds.

The light also moves. Four steady white points in the same frames hold their spacing to one another to within about a pixel, the way stars do: over 18 to 22 seconds, no pair drifts by more than a third of a pixel a second. The red light pulls away from all four at 16 to 17 pixels a second, in a straight line that strays from a ruled fit by 1 to 3 pixels. A light that flashes on a beacon’s beat and crosses the stars at a steady rate is an airplane, unless a flight record for the right place says otherwise, and without the place GSR cannot pull one.

One of those four steady points rides through the clip from 16 to 40 seconds and never flashes. It holds still against the other three, so it belongs to the sky’s fixed background: a star or a planet. Later in the clip, from about 1:09 to 1:13, both passes also flagged a second light as an aircraft. Frame by frame, that track ends by jumping onto smeared shore lights during a fast swing of the phone, and the flashes it counted include the jump, so GSR does not count it.
The one light that crossed the stars
The last clip, IMG_8904, is pointed up at a darkening sky full of faint stars. Stacked as filmed, the stars all trace one repeated squiggle, the photographer’s hand again. Lined up on the stars, they collapse to points, and one light does not: it draws a straight trail across them.

The engine tracked that light from 6.4 to 23.2 seconds, 326 detections in 16.8 seconds. Measured against the stars it moved 14.9 pixels a second on a path so straight that a ruled line misses its positions by 2.5 pixels, root-mean-square. Its brightness rises and falls with the camera’s motion but does not blink on a beat.

A steady point that crosses the stars in a straight line without a strobe, in deep twilight, is the classic look of a satellite catching sunlight it can still see from orbit after the ground has gone dark. A distant airplane whose strobes do not register on a phone is the other candidate. Telling them apart takes the rate in degrees a second and a match against the satellite catalog, and both need the place. GSR tried to work out the camera’s pointing from the stars themselves; with this few stars and an unknown zoom, the matches did not agree from frame to frame, so this article uses none of them.
What the engine got wrong
The engine is a tool GSR built, and it errs in ways worth printing. Across the seven clips it kept 14,446 tracks that lasted a second or more, nearly all of them stars, shoreline lights and glints on the water. On 43 percent the top two explanations sat within a point of each other, close calls the engine flags rather than settles.

The second pass made 36 confident aircraft calls, and GSR reports none of them as aircraft. They are short, broken tracks, none longer than 5 seconds and present in a median of about a quarter of their frames, which is how the tracker behaves when it hops from one light to another during a fast swing. GSR opened two of the highest-scoring frame by frame, and both were tracker jumps. The engine’s own scorer also missed the beacon: it filed the red cluster as a fixed light, and only the color-timing check and the spacing test caught it. The first pass had read the red light as holding still against a steady white point and blamed an apparent drift on its own camera estimate. Measured directly, point to point in each frame, the white point is the one holding still with the stars, and the red light is the one moving.
What would settle it
Three things from the reader would turn this from what the frames allow into what happened. The beach, named closely enough to put a pin on a map. Which way the phone faced, which a compass app shows in ten seconds. And the workplace camera recordings, if they exist, as the original files, which would add a second view. With the place, GSR can replay the public flight record for those 17 minutes, run the satellite catalog for the light in the last clip, and say whether the light over the headland was Saturn. The offer stands for anyone else who was on a New England beach at dusk on October 9 and filmed the same sky.
What the frames say now is plain enough. Seven clips, one phone, one hand, a planet rising, the stars coming out, an airplane with its beacon on and one more light crossing the sky in a straight line. The shapes were real. The camera drew them.
The seven clips, in full
Every clip as the reader filmed it, start to finish, in the order shot. The sound is removed, the phone’s high-dynamic-range video is converted to standard video so it plays in a browser, and people on the beach are blurred. The engine ran on the original files, not these copies.
The headland and the bright point above it; the group of four lights near the waterline from 2:54. Video: submitted by a reader who asked not to be identified; converted and blurred by Granite State Report.
The picture brightens at 0:44. A person who passed close to the lens near 2:10 is blurred. Video: submitted by a reader who asked not to be identified; converted and blurred by Granite State Report.
The lit shoreline under a blue sky. Video: submitted by a reader who asked not to be identified; converted and blurred by Granite State Report.
The red light, from 0:02 to 0:24. The beach strip at the bottom is blurred where people stood. Video: submitted by a reader who asked not to be identified; converted and blurred by Granite State Report.
Shoreline lights, then open sky. Video: submitted by a reader who asked not to be identified; converted and blurred by Granite State Report.
Sky above a dark wall, then the shoreline. People in the lower frame are blurred through 0:22. Video: submitted by a reader who asked not to be identified; converted and blurred by Granite State Report.
The light that crosses the stars, from 0:06 to 0:23, near the upper right. Video: submitted by a reader who asked not to be identified; converted and blurred by Granite State Report.
— Dexter Dow, Granite State Report
Fact check
| # | Claim | Status | Source |
|---|---|---|---|
| 1 | The reader’s note: “Really weird shapes in sky appear and disappear”; Lowell, Mass.; facing “North?”; about ten minutes; the shapes also appeared on workplace cameras, which the reader filmed; the reader asked not to be identified | ATTRIBUTED | The reader’s submission through GSR’s Something You Can’t Explain drop box, quoted and paraphrased |
| 2 | Files and fingerprints (bytes; SHA-256 first and last characters): IMG_8898 203,932,645, f8a07830…9096; IMG_8899 111,545,849, 3aa23938…1c01; IMG_8900 33,322,982, 7368cb52…3501; IMG_8901 24,355,678, 54c00b79…0a81; IMG_8902 62,566,847, 73ebb4dd…efc9; IMG_8903 23,470,344, a0edf171…afd5; IMG_8904 10,685,601, 4c119c53…f5dc | VERIFIED | Engine custody manifests (SHA-256 computed on the original files) |
| 3 | All seven: Apple iPhone 18 Pro, software 27.0; recorded Oct. 9, 2026 at 6:49:44, 6:55:54, 6:58:59, 7:01:36, 7:03:16, 7:04:59 and 7:06:46 p.m. EDT; 274.8, 152.1, 46.7, 73.8, 80.4, 34.8 and 28.8 s (691.4 s, 11 min 31 s); 16,590 frames; HEVC Main 10 with HLG transfer, portrait; no location key in any file | VERIFIED | FFprobe container and stream reports and the QuickTime metadata keys, read by the engine’s custody module |
| 4 | Lowell is where the Concord River meets the Merrimack, about 25 miles northwest of Boston | ATTRIBUTED | Wikipedia, Lowell, Massachusetts |
| 5 | Lowell, Oct. 9, 2026: sunset 6:13 p.m., end of civil twilight 6:41 p.m., moonset 5:31 p.m., moon 1 percent lit | VERIFIED | U.S. Naval Observatory one-day data for 42.6334 N, 71.3162 W, read Oct. 27, 2026 |
| 6 | Sun 7.61° below the horizon at 6:49:44 p.m. and 10.75° below at 7:06:46 p.m.; Saturn rose about 6:09 p.m. at azimuth 87.6° and stood 7.6° up at 6:49:44 and 10.8° at 7:07:15; Lowell, Hampton Beach and Boston Harbor positions differ by 0.4° or less | VERIFIED | GSR computation with Astropy 8.0.2 and its built-in ephemeris |
| 7 | Saturn reached opposition Oct. 4, 2026, rising at sunset and brighter than any star in the eastern sky | ATTRIBUTED | EarthSky, Saturn at opposition |
| 8 | At 6:49 p.m. Vega was 81° up and Arcturus 23° up in the west; no catalog star brighter than magnitude 6.3 lay within 2° of Saturn | VERIFIED | GSR computation with Astropy; Yale Bright Star Catalog positions |
| 9 | Second clip (IMG_8899): mean frame brightness roughly doubles between 44 and 48 s (first pass 24 to 52 on a 0–255 scale; second pass 97 to 209, 10-bit); median points over threshold 3 before and the 300 cap after (first pass), 8 before and the 60 cap after (second pass) | VERIFIED | Second-pass per-frame manifest for IMG_8899, computed in code; first-pass figures as recorded by GSR |
| 10 | Shake test, all seven clips: 174,146 frames on bright tracks (1 s or longer, median peak 300 or more) with known camera motion; light found in 69.5% of 76,488 frames with a step under 2 px and 29.7% of 357 frames over 80 px; median long/short ratio 1.63 (under 2 px) and 1.90 (40–80 px) | VERIFIED | Second-pass engine manifests; computed in code (shake7.json) |
| 11 | First clip, 2:54.5–2:59.8: two lights of a group of four stay 187.2–201.8 px apart, the angle between them varying by 1.4° (one standard deviation), over 123 shared frames | VERIFIED | Second-pass tracks 202826 and 210994 in IMG_8898; computed in code |
| 12 | Airplane forward position lights are red on the left and green on the right, with a white rear light; position lights must be lit from sunset to sunrise | VERIFIED | 14 CFR 25.1385(b), (c); 14 CFR 91.209(a) |
| 13 | Bright stars low in the sky can flash with color as they twinkle | ATTRIBUTED | Astronomy magazine, as cited in GSR, Oct. 12, 2026 |
| 14 | First pass, fourth clip, 2.3–23.8 s: red over half the cluster’s brightness on 113 of 478 lit frames, in 22 episodes; median gap 1.04 s; strongest repeat 1.08 s | ATTRIBUTED | First-pass engine color manifest for IMG_8901 (color_chain.json) |
| 15 | Second pass, same cluster, 2.29–23.96 s: 521 frames followed, 509 lit; red-share series matches itself at +0.67 at a 1.08 s delay, +0.53 at 2.17 s and +0.45 at 3.25 s, and −0.47 at 0.54 s; spectral peak at a 1.085 s period (about 55 a minute) | VERIFIED | Second-pass color-timing manifest for IMG_8901 (colorcheck.json); computed in code |
| 16 | Transport-category airplane anticollision lights must flash at an effective 40 to 100 cycles a minute | VERIFIED | 14 CFR 25.1401(c) |
| 17 | Four steady points (tracks 21156, 18584, 24634, 23154): pairwise spacing drifts 0.30 px/s or less with scatter of 2.1 px or less over 441–536 shared frames. The red light’s spacing to each grows 16.2 to 17.4 px/s, scatter 1.0–3.1 px, over 104–173 shared frames between 14.4 and 24.0 s | VERIFIED | Second-pass positions in IMG_8901; computed in code |
| 18 | Steady white point (track 21156): 16.21–40.21 s, 563 detections, present in 98% of its frames, no regular flash | VERIFIED | Second-pass manifest for IMG_8901 |
| 19 | Light at about 1:09–1:13: second pass track 58808, 69.71–73.62 s, scored aircraft 3.0 on four flashes; its last frames fall on smeared shoreline lights. First pass: 68.67–72.38 s, median gap 0.88 s, aircraft by 2.5 | VERIFIED | Second-pass manifest and frame crops for IMG_8901; first-pass manifest as recorded by GSR |
| 20 | Seventh clip, track 1033: 6.42–23.21 s, 326 detections, 14.9 px/s against the registered stars, straight-line residual 2.47 px RMS, no regular flashing | VERIFIED | Second-pass manifest for IMG_8904 |
| 21 | Plate solving against the Yale Bright Star Catalog gave no consistent pointing or scale across frames of the seventh clip | VERIFIED | Engine plate-solve runs on three single frames and an aligned stack |
| 22 | All seven clips: 14,446 tracks of 1 s or more; 43% close calls (top two explanations within a point); per clip 37% to 62% | VERIFIED | Second-pass manifests; counted in code |
| 23 | 36 confident aircraft calls (margin of a point or more), none longer than 4.9 s, median presence 26% of their frames; tracks 187922 (first clip) and 58808 (fourth clip) inspected frame by frame as tracker jumps; the red cluster’s own tracks (8443, 21741) were scored star, planet or fixed light | VERIFIED | Second-pass manifests; crops inspected |
| 24 | The first pass read the red light and a white point as holding nearly still against each other and attributed an apparent shared drift of about 15 px/s to its camera estimate | ATTRIBUTED | First-pass analysis of IMG_8901 as recorded by GSR; compare row 17 |
| 25 | People on the beach appear in the second, fourth and sixth clips and are blurred in the published videos; the phone’s own face-detection metadata flags faces only in IMG_8899 (about 2:10) and IMG_8903 (0:11 and 0:21) | VERIFIED | Frame review of every clip; Apple timed-metadata face track read from each file |
Send the original file through Something You Can’t Explain, or write to granitestatereport@gmail.com · (603) 931-9264 · Granite State Report, 43 Sargent Street, Northfield, NH 03276. Identities are protected on request.
Editor’s note. The videos, their camera data and the written note belong to the reader, who asked not to be identified; the measurements are Granite State Report’s, from the UFO Data Analysis Engine v0.4.0 run manifests named in the fact-check table, with every parameter recorded there. Sun and moon times are from the U.S. Naval Observatory; planet and star positions are GSR computations with Astropy and the Yale Bright Star Catalog. Federal rules are cited from the Code of Federal Regulations. The reading of the red light as an airplane rests on its color timing and its motion against the stars, not on a flight record, because the files carry no location. Corrections: Granite State Report corrects verified errors promptly and notes what changed and when.

