Date: 202101
Local time of day: 0601-1200
Location: ZZZ.Airport, US
Flight conditions: IMC
Weather elements / visibility: 7
Light: Daylight
Aircraft: B737-800
Operator: Air Carrier
Operating under: Part 121
Flight plan: IFR
Mission: Passenger
Flight phase: Initial Approach; Final Approach
Airspace: Class C ZZZ
ATC / advisory: Tower ZZZ
Reporter organization: Air Carrier
Reporter function: First Officer; Pilot Flying
Reporter qualification: Flight Crew Air Transport Pilot (ATP); Flight Crew Multiengine; Flight Crew Instrument
Human factors: Workload; Time Pressure; Situational Awareness; Fatigue; Distraction
Second reporter function: Pilot Not Flying; Captain
Anomaly: Deviation / Discrepancy - Procedural Clearance; Deviation / Discrepancy - Procedural Published Material / Policy; Inflight Event / Encounter Weather / Turbulence; Inflight Event / Encounter Unstabilized Approach; Inflight Event / Encounter CFTT / CFIT
Detector: Automation Aircraft Terrain Warning; Person Flight Crew
When detected: In-flight
Result: Flight Crew Took Evasive Action; Flight Crew Executed Go Around / Missed Approach
Contributing factors: Human Factors; Procedure; Company Policy
Primary problem: Human Factors

Narrative: For the ILS Runway 04R at ZZZ; performance numbers were run for a Flaps 30 landing with a good stopping margin at Autobrakes 3. ATIS winds were calling approximately 070/13 - no gusts. Upon switching to Tower at ZZZZZ on the localizer course and tracking the glideslope; Tower cleared us to land with winds now gusting to 20. As PF (Pilot Flying); I elected to add 4 knots to the Vtarget and as an added Safety measure at ZZZ; I selected Autobrakes MAX to compensate for a slightly increased approach speed. The PM (Pilot Monitoring) attempted to quickly re-run the performance data; but the gusts were not yet accounted for in the METAR. Rather than going heads down any longer inside 1;000 feet AGL; we agreed a 4-5 knot addition to VTarget and using Autobrakes MAX would be more than sufficient to account for the gust factor.At approximately 500 feet AGL; we received a GPWS Too Low Flaps Alert. The PM immediately called for the go-around and it was initiated. A quick scan of the flap handle and I realized that I had neglected to call for Flaps 30 from a Flaps 15 setting; and the Before Landing Checklist was not run. We were quickly vectored around for another uneventful ILS. The minor distraction of adding a gust factor and changing the Autobrakes setting sent me out of a normal approach configuration sequence and we ended up both missing the final flap setting and subsequent checklist.With the normal ZZZ procedure of not contacting (and often not switching to) Tower until reaching the fix at about a 5-mile final; it's possible for us to miss out on cues to changing weather on the ground. We were number 3 or 4 in a sequence of landings on 04R. Had we switched to Tower five or more miles sooner; we may have caught the gusting winds earlier and had more time to type in the adjusted winds and send away for the performance numbers prior to 1;000 feet AGL. This was another series of events combined with mild fatigue that led to poor task prioritization on our parts.


Second narrative: The short version is that we got 'Too Low; Flaps' at 500 feet because we were at Flaps 15. We went around. Planned winds were 070/7. Tower winds were 070/12G20. I re-ran the performance landing numbers at 1;500 feet; but did not override the METAR and got back the numbers for 070/7. The PF (Pilot Flying) chose to add 5 knots to VTarget and we agreed to go from Medium to Max braking and continue.There is no guidance I am aware of as to when we would be required to re-run our landing numbers. I should not have tried to re-run the landing numbers at that point. That would have eliminated the distraction that led to not selecting our planned final flaps or running the Before Landing Checklist.


Synopsis: B737-800 flight crew reported executing a go-around due to improper flap setting on short final.