Here's what's going on with Salesforce report exports right now (Step-Up Auth) and how to deal with it
▲ 1 r/SalesforceDeveloper+1 crossposts

Here's what's going on with Salesforce report exports right now (Step-Up Auth) and how to deal with it

There seems to be quite a bit of confusion around report exports since Salesforce started rolling out Step-Up Authentication. If you’re suddenly seeing scheduled exports fail or reports capped at 2,000 rows, there’s a reason for it. Here’s a quick breakdown. 

Why this is happening

Salesforce is enforcing Step-Up Authentication on report exports and print actions. Previously, one authenticated session could stay valid for a long time. Now Salesforce can force a fresh identity check specifically on report access, even mid-session.

This rollout is happening gradually across Salesforce orgs, starting July 1st and continuing over roughly 30 days. So it may be switched on for your org before you're expecting it — if it hasn't already. You can check (or even manually toggle it in a sandbox to test) that setting yourself rather than waiting to find out the hard way. 

How Step-Up Authentication Impacts Automated Salesforce Report Workflows 

This setting doesn't just affect people clicking "export" in the browser. Any scheduled job, connector, or background integration pulling reports programmatically can't complete an interactive MFA challenge mid-process — there's no browser window to click through. So once step-up is on for your org, those tools fall back to Salesforce's Analytics API instead of the older CSV export endpoint.

 That's a different API with different rules:

  • Hard 2,000-row limit per call.
  • Org-wide row limit. Salesforce caps Analytics API usage at over 3,000,000 rows per hour across your entire org. This limit is shared — if multiple users in the same org are pulling report data simultaneously, they’re all drawing from the same pool. Heavy concurrent usage can exhaust it quickly.

This applies to any tool pulling reports outside the native UI — it's a platform-level constraint, not specific to one vendor.

Learn more about report export limitations and how to bypass them 

A few things that seem to help, regardless of which tool you're using:

  1. Make sure there’s a column with unique values in the report. This helps you work around the lack of pagination in the API and pull the report in correctly. The order of the records will not be the same as in the report, but that’s the least of the problems, and the data can always be reordered in the spreadsheet.
  2. Trim reports to only the fields, rows, and date ranges you actually need — smaller pulls cost less against the hourly quota.
  3. Stagger scheduled refreshes so multiple report jobs aren't all firing in the same hour window.
  4. Coordinate with other teams/admins doing their own exports — the 3M/hour cap is org-wide, so one team's heavy scheduled job can eat into everyone else's headroom.
  5. If you're regularly pulling 50k+ records, a report was never really the right layer for that — direct SOQL query is what that volume calls for.
  6. Probably the most useful workaround is converting the report into a SOQL query: any report can be converted into an equivalent SOQL query and run outside the report/Analytics API layer entirely —This skips the 2,000-row cap and the report-specific rate limits completely. You can do this manually in the Developer Console, or use it as a free feature in Xappex spreadsheet connectors (XL-Connector and XL-Connector 365 for Excel integration, or G-Connector for Google Sheets): These tools have a built-in "Report to SOQL" converter that generates the query for you. It's the actual fix for most of the "report capped at 2,000 rows" complaints.

Disclaimer: not all reports can be converted to SOQL automatically, so will be very helpful if the conversion is handled by a person that has experience with SOQL who can validate the resulting SOQL and adjust it if necessary to fit your data export needs.

Learn more about the free Report-to-SOQL converter

  1. If none of the above works for you, you can request an extension from Salesforce before step-up gets enforced on your org — a fair number of companies are doing exactly this through their account rep or a support case while they sort out their integrations.

  2. If you need to pull even larger reports, there might be a fix for you — read on.

Founder of Xappex here — we build XL-Connector and G-Connector, which sync Salesforce with Excel/Google Sheets. This rollout kept my team busy for weeks making sure our tools detect the setting and fall back correctly. The Report-to-SOQL converter mentioned above is free permanently (not just during a trial) — genuinely the thing I'd point most people to first. If you need to pull and automate larger reports, paid plans push past the 2,000-row cap on report exports directly.

If you want to see any of this against your own org's actual reports and volumes please send a dm, happy to help. Glad to answer any questions in the comments as well.

u/Xappex — 6 days ago