The problem happens when there is a visible insert row on the grid which gets replaced by an empty row in the exported Excel file. The temp solution is to clear the insert row with the code below and the empty row in the generated excel will be removed.
protected void RadGrid1_ItemCommand(object sender, GridCommandEventArgs e)
{
if(e.CommandName == RadGrid.ExportToExcelCommandName)
{
if(RadGrid1.EditIndexes.Count > 0)
{
RadGrid1.EditIndexes.Clear();
RadGrid1.Rebind();
}
if (RadGrid1.MasterTableView.IsItemInserted)
{
RadGrid1.MasterTableView.GetInsertItem().FireCommandEvent("Cancel", "");
}
}
}