Stay organized with collections
Save and categorize content based on your preferences.
Reports have a maximum length of 100,000 rows in the AdSense Management API, by default. If you’re
running close to these limits, or running into performance issues while processing the data, here
are some tips that may help.
Reducing the scale of your report
The first thing to look for when trying to make a report smaller is the list of dimensions you’re
using; each dimension you add has a multiplicative effect on the number of returned rows. Make sure
you only add the dimensions you need!
Splitting your reports
Sometimes, you only need extremely accurate data for a portion of the report, with the rest
allowing for less detail. For example, you could need extremely accurate details for the previous
month's earnings, with stats per country and channel across every day, but only really need the
country-level data when looking before that. You could therefore run a complex report for the
previous month, but a simpler one for the time before that.
Avoid JSON parsing by switching to CSV
The AdSense Management API allows you to receive your reports in CSV format, rather than the usual JSON.
To do that, simply call the alternate generateCsv method.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-03-17 UTC."],[[["\u003cp\u003eAdSense Management API reports have a default maximum length of 100,000 rows, and exceeding this limit may cause performance issues.\u003c/p\u003e\n"],["\u003cp\u003eMinimizing the number of dimensions used in a report can significantly reduce its size and improve performance.\u003c/p\u003e\n"],["\u003cp\u003eFor reports requiring varying levels of granularity, consider splitting them into multiple reports with different dimension sets to optimize data retrieval.\u003c/p\u003e\n"],["\u003cp\u003eSwitching from JSON to CSV format for report retrieval can avoid JSON parsing overhead and improve efficiency.\u003c/p\u003e\n"]]],["To manage large AdSense reports, reduce the scale by minimizing the number of dimensions used, as each dimension increases rows. Split reports into detailed and less detailed sections based on data accuracy needs. For improved performance, switch from JSON to CSV format by using the `generateCsv` method. Consider batching and optimizing dimension usage for further improvements.\n"],null,["Reports have a maximum length of 100,000 rows in the AdSense Management API, by default. If you're\nrunning close to these limits, or running into performance issues while processing the data, here\nare some tips that may help.\n\nReducing the scale of your report\n\nThe first thing to look for when trying to make a report smaller is the list of dimensions you're\nusing; each dimension you add has a multiplicative effect on the number of returned rows. Make sure\nyou only add the dimensions you need!\n\nSplitting your reports\n\nSometimes, you only need extremely accurate data for a portion of the report, with the rest\nallowing for less detail. For example, you could need extremely accurate details for the previous\nmonth's earnings, with stats per country and channel across every day, but only really need the\ncountry-level data when looking before that. You could therefore run a complex report for the\nprevious month, but a simpler one for the time before that.\n\nAvoid JSON parsing by switching to CSV\n\nThe AdSense Management API allows you to receive your reports in CSV format, rather than the usual JSON.\n\nTo do that, simply call the alternate [generateCsv](/adsense/management/reference/rest/v2/accounts.reports/generateCsv) method.\n\nExample \n\n```\nDATE,CLICKS\n2014-01-01,2\n2014-01-02,1\n2014-01-03,4\n2014-01-04,1\n2014-01-05,1\n```\n\nNext steps\n\n- [Batching](/adsense/management/reporting/batching)\n- [Using Multiple Dimensions Wisely](/adsense/management/reporting/dimensions_metrics#usingmultiple)"]]