Seeing a Tableau export come through with no rows, fewer rows than you expected, missing columns, or an outright failure, even though the same view looks perfect in Tableau? It's frustrating, but the good news is that the cause is almost always on the Tableau side, and it's usually quick to fix.
Here's the thing to keep in mind: PushMetrics pulls back exactly what the Tableau API hands it for your view and filters. It doesn't do any extra filtering or quietly drop rows of its own. So when the numbers don't match, it points us straight at the connection or the view. Let's walk through the usual suspects.
The view changed or you're pointing at the wrong one
If a view gets re-published or recreated in Tableau, it can pick up a new ID even if the name stays the same, and your report may still be pointing at the old one, which now returns nothing or only part of the data. Re-sync the view in PushMetrics so it grabs the current ID, and if you've got several similarly named views floating around, double-check you've selected the one you actually mean.
Missing embedded credentials
Errors like "data sources not connected" (you might see 0x5CE10192 DataSourcesNotConnectedException) or "problem querying the image/data for view" are Tableau's way of saying the view doesn't have embedded credentials. Without them, PushMetrics can't query the view on its own when your report runs unattended. Re-publish the view in Tableau with embedded credentials and you should be set.
An expired Personal Access Token (PAT)
If you spot something cryptic like error:0606506D ... wrong final block length (or a plain 401), that's almost always the Personal Access Token behind your connection having expired or changed. Make sure a token with the same name still exists and is valid in Tableau, then re-sync it in your PushMetrics connection.
One thing to watch when a teammate leaves and you switch to a new PAT: reports only carry over cleanly if the same views are available under the new connection. Any view that isn't synced or accessible under the new token will keep failing until it's added. So pick a connection whose account can actually reach all the views your reports need.
Some rows missing on certain dates
If only a handful of records are missing, the culprit is usually the date filter on those records in Tableau. A "yesterday" filter, for instance, depends entirely on the timestamp value Tableau sees. A couple of details that often explain the gap:
- PushMetrics briefly caches Tableau results (about a minute), so a very recent change might not show up instantly.
- Report schedules run in UTC, so they won't shift with your local daylight-saving time.
A column went missing in the Excel file
If a column you can see in the editor is absent from the delivered file, check whether two columns in the view share the same name. When the data gets converted to Excel, same-named columns can collide and one gets dropped. Renaming them in Tableau so each is unique fixes it.
Timeouts or failures under load
If exports time out, it's often a heavy view, or lots of reports hitting the same Tableau site at once and bumping into Tableau's concurrency limits. Spreading out the schedules of your big Tableau reports usually clears this right up.
Still not adding up?
If the data's correct in Tableau but the preview inside PushMetrics shows the same problem, grab the view ID and the error from the execution log and send them our way, and we'll take it from there. Nine times out of ten it's one of the things above, and we'll get you sorted quickly.