Date: 201811
Local time of day: 1201-1800
Location: ZZZ.Airport, US
Flight conditions: VMC
Aircraft: B737 Undifferentiated or Other Model
Operator: Air Carrier
Operating under: Part 121
Flight plan: IFR
Mission: Passenger
Flight phase: Climb
Airspace: Class A Y
Reporter organization: Air Carrier
Reporter function: First Officer; Pilot Not Flying
Reporter qualification: Flight Crew Air Transport Pilot (ATP); Flight Crew Multiengine; Flight Crew Instrument
Human factors: Troubleshooting; Time Pressure; Situational Awareness; Communication Breakdown
Second reporter function: Dispatcher
Anomaly: Deviation / Discrepancy - Procedural Published Material / Policy; Deviation / Discrepancy - Procedural Weight And Balance; Inflight Event / Encounter Fuel Issue
Detector: Person Flight Crew
When detected: In-flight
Result: Flight Crew Diverted; Flight Crew Landed As Precaution
Contributing factors: Human Factors; Procedure
Primary problem: Ambiguous

Narrative: I had started to look at release 1 in Ops; when the Captain (CA) walked over and said that he had spoken with Dispatch to request different routing and Cost Index for better rides. He said that release 2 would be on the way and suggested we go ahead and go to the plane.  Got to airplane; and downloaded Release 2 while getting the plane ready. While loading the box; I noticed that our ZFW seemed very light at 96.0; but knew we had a light load and continued prepping for the flight. Also; I was surprised that our Gate fuel had gone down about 4K lbs from R1; but thought that it was due to the Cost Index and route changes. Our gate fuel from R2 was 25.2 - fueler put on 25.8 (over fueling by 600 lbs). Final weights came up; said we had a DROP in TOW CHG of -2588 lbs. Verified Takeoff speeds/weights. They were off by about 30k lbs from the original planned data. We verbalized this difference and verified the uplinks again; requesting new Takeoff data at our new weight of 150.8. Especially with the [company] saying that our overall weight had gone down; we completed our checklists (although we later realized that we should have asked Dispatch about the weight change). Single engine taxi out; no line; cleared for immediate Takeoff. On climb out; FMC fuel landing at ZZZ shows 5.0. We both commented that that was lower than expected (with the center pumps still on) and started verifying the details. We double checked R2; it REMF (Remaining fuel at touchdown) of 5.0 - ok that checks. [Documents] shows landing in ZZZ with 5.6. So; we thought we must have a wind shift somewhere. As we continued to climb out; the FMC forecast landing fuel in ZZZ continued to drop; 4.9; 4.8; 4.7; 4.6. Within about 15 minutes; both the CA and I saw the trend and start looking for where there is a FMC loading issue - possible extended final in ZZZ; insufficient winds; incorrect transitions. At that point; our tailwind was even greater than forecast and yet we still could not find why the fuel was dropping. We checked the Fuel used function on panel - fuel usage is even (the same) for both engines; and what was forecast to be close to the burn on OFP (Operational Flight Plan) - so no fuel leak. And the crossfeed was verified closed.We contacted dispatch about the situation. Everything was loaded correctly; and we left with more than our planned gate fuel and yet we still showed landing in ZZZ well below [performance] REMF values.After telling us to standby; it took dispatch over 30 minutes to get back to us.Over that time; we double checked the final weights number(s). When compared with the OFP ZFW the final weights showed a ZFW of 125.1 where the OFP showed a ZFW of 96.1! Almost 30k lbs more than the [performance] ZFW. Now we had Takeoff numbers for 150.8 (ZFW plus fuel); so Takeoff performance wasn't ever at risk. But now we weighed more than planned and our fuel burn was much higher than forecast.Now that we knew why our fuel was showing lower than OFP. Eventually. The FMC settled into a REMF fuel at ZZZ of 3.8; when the center tank was empty - barely FAR 45min. Dispatch finally got back to us and said that they had over three people look at it and couldn't figure why; when the ZFW was entered into [the computer] - it would kick back and put in a different number.We continued to discuss our options in coordination with Dispatch. Due to our forecast low fuel state if we continued to ZZZ; we elected to divert to ZZZ1 for more fuel - in the interest of safety.Since we had plenty of fuel to go to ZZZ1. Stopping for fuel was better than pushing on to a bad outcome. Dispatch confirmed that we should stop in ZZZ1 for fuel.We coordinated with ATC and Dispatch; changing our destination to ZZZ1. Went to ZZZ1; landed uneventfully; and went to [the] gate. Although there was a short wait for the fueler; we were only on the ground for about 30 min and departed with same Passengers and bag load (no changes). While a new gate fuel of about 11.0; we continued on to ZZZ. We landed uneventfully approximate 45min after schedule.


Second narrative: Aircraft was released and planned to operate on time to ZZZ. It was released prior to me taking over the shift. About 45 minutes after taking over the desk the captain called me and said he was not pleased with the route that was filed because of possible turbulence enroute. He asked me to produce another flight plan preferably over ONL to remain north of the forecasted turbulence. He also asked for Cost Index 75 and REMF of 1:15 at ZZZ. I briefed him on the latest weather enroute . I planned the new route and included his requests; cancelled his original plan with Center and sent Release #2. While they were pushing back; the captain sent an Acars message saying he was pleased with the routing and thanked me. After about 45 minutes in the air he sent an Acars message indicating the REMF at ZZZ showed 3.7 and that the ZFW was showing 96.0+ and not 125.0+ that was on the original plan. I checked the [flight plan] and it showed 96.0+ with an increase of 29.0+. The [flight plan] did not indicate an alert for that flight; nor did the Load planner call and indicate a large increase in the ZFW prior to departure. I spoke with the Load Planner and he could not understand the why the ZFW reverted back to 96.0+. The captain never called me by phone or Acars that there was a major discrepancy in the ZFW from Release 1 when loading the revised flight plan. After a short discussion; it was agreed that the flight would stop at ZZZ1 for fuel and continue to ZZZ.


Synopsis: B737 First Officer and Dispatcher reported a flight plan discrepancy regarding ZFW led to a precautionary diversion for additional fuel.