diff --git a/optuna_dashboard/ts/components/BestTrialsCard.tsx b/optuna_dashboard/ts/components/BestTrialsCard.tsx
index ad18418e5..fe375604a 100644
--- a/optuna_dashboard/ts/components/BestTrialsCard.tsx
+++ b/optuna_dashboard/ts/components/BestTrialsCard.tsx
@@ -32,16 +32,22 @@ export const BestTrialsCard: FC<{
header = `Best Trial (number=${bestTrial.number})`
content = (
<>
-
- {bestTrial.values}
-
+ {bestTrial.values === undefined || bestTrial.values.length === 1 ? (
+
+ {bestTrial.values}
+
+ ) : (
+
+ Objective Values = [{bestTrial.values?.join(", ")}]
+
+ )}
Params = [
{bestTrial.params
diff --git a/optuna_dashboard/ts/components/TrialList.tsx b/optuna_dashboard/ts/components/TrialList.tsx
index 7ef89d737..72089183e 100644
--- a/optuna_dashboard/ts/components/TrialList.tsx
+++ b/optuna_dashboard/ts/components/TrialList.tsx
@@ -158,7 +158,7 @@ const TrialListDetail: FC<{
const params = trial.state === "Waiting" ? trial.fixed_params : trial.params
const info: [string, string | null | ReactNode][] = [
- ["Value", trial.values?.map((v) => v.toString()).join(" ") || "None"],
+ ["Value", trial.values?.map((v) => v.toString()).join(", ") || "None"],
[
"Intermediate Values",