SQL Server Maintenance Plan - Multiple vs Single Plan / Cleanup History First Question:
I have created multiple Maintenance Plans for SQL-Server via SSMS. Now I'm wondering what is the &quot;best&quot; for similar plans: Multiple or single plans with subplans? Is it safe to use multiple tasks in one subplan?
At the moment I have 7 separate plans:

Backup - Full (weekly)
Backup - Diff (daily)
Backup - Transaction (every 30min)
Delete old &quot;bak&quot; files (older than 6 months, executed weekly)
Delete old &quot;trn&quot; files (older than 6 months, executed weekly)
Delete old maintenance log files &quot;txt&quot; (older than 6 months, executed weekly)
Cleanup history (older than 6 months, executed weekly)

For example I could create one backup-plan with 3 subplan (full, diff, transaction - because of different times) and a second plan with one subplan (executed weekly) with 4 tasks inside (delete bak, trn, txt, history) executed at the same time. What would be your recommendation?
I'm monitoring the failed jobs with icinga2 =&gt; for the second subplan with 4 tasks =&gt; will this reported as failed job if one single task fails?
Second Question:
How big can the history get - with the knowledge of the first question =&gt; How long should I keep it?  For example I have chosen for the cleanup history 6 months =&gt; &quot;synchronized&quot; with deleting bak/trn files - because if is not equal either I can't select the restore &quot;point in time&quot; (history deleted, bak/trn files available) in the GUI or I will see a &quot;point in time&quot; (GUI) without having bak/trn files for it.
But I'm not sure how big the database (containing the history) can get? Is it &quot;safe&quot; to only delete it all 6 months or should I cleanup it more often?
First Answer
It depends, i.e. number of databases, database size (maybe all database might not need daily backup and log backup). However, for flexible and reliable approach I would refer this solution.
Second Answer
The retention period must be decided based on the requirement of business and nature of the data, most cases 30-60 days retention period followed, but again it depends on your environment and business, to get an idea with the backup storage requirement quickly, take the following query result into excel, hope you can easily analyze to get average backup size per day, per month etc..
select    backup_finish_date
        , FORMAT (backup_finish_date, 'yyyyMM') as backup_month
        , database_name
        , cast( (backup_size / 1048576) as numeric (12,2)) backup_size_MB
        , cast( (compressed_backup_size / 1048576) as numeric (12,2)) compressed_backup_size_MB
from msdb.dbo.backupset

Note: BACKUP Compression not possible in SQL Express edition