diff --git a/java/com/android/dialer/voicemail/datasources/VoicemailData.java b/java/com/android/dialer/voicemail/datasources/VoicemailData.java
new file mode 100644
index 0000000..c3c1ff5
--- /dev/null
+++ b/java/com/android/dialer/voicemail/datasources/VoicemailData.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.voicemail.datasources;
+
+import com.google.auto.value.AutoValue;
+
+/** Dummy voicemail data class to allow us to work on the UI for the new voicemail tab. */
+@AutoValue
+public abstract class VoicemailData {
+  public abstract String name();
+
+  public abstract String location();
+
+  public abstract String date();
+
+  public abstract String duration();
+
+  public abstract String transcription();
+
+  public static Builder builder() {
+    return new AutoValue_VoicemailData.Builder();
+  }
+
+  /** Creates instances of {@link VoicemailData}. */
+  @AutoValue.Builder
+  public abstract static class Builder {
+    public abstract Builder setName(String value);
+
+    public abstract Builder setLocation(String value);
+
+    public abstract Builder setDate(String value);
+
+    public abstract Builder setDuration(String value);
+
+    public abstract Builder setTranscription(String value);
+
+    public abstract VoicemailData build();
+  }
+}
diff --git a/java/com/android/dialer/voicemail/listui/NewVoicemailCallLogAdapter.java b/java/com/android/dialer/voicemail/listui/NewVoicemailCallLogAdapter.java
index 63dae20..b40c863 100644
--- a/java/com/android/dialer/voicemail/listui/NewVoicemailCallLogAdapter.java
+++ b/java/com/android/dialer/voicemail/listui/NewVoicemailCallLogAdapter.java
@@ -20,23 +20,23 @@
 import android.view.View;
 import android.view.ViewGroup;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.voicemail.datasources.VoicemailData;
 import java.util.List;
 
 /** {@link RecyclerView.Adapter} for the new voicemail call log fragment. */
 final class NewVoicemailCallLogAdapter extends RecyclerView.Adapter<NewVoicemailCallLogViewHolder> {
 
-  private final List<String> values;
+  private final List<VoicemailData> voicemailData;
 
-  NewVoicemailCallLogAdapter(List<String> myDataset) {
-    values = myDataset;
+  NewVoicemailCallLogAdapter(List<VoicemailData> dataSet) {
+    voicemailData = dataSet;
   }
 
   @Override
   public NewVoicemailCallLogViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
 
     LayoutInflater inflater = LayoutInflater.from(viewGroup.getContext());
-    View v = inflater.inflate(R.layout.voicemail_call_log_entry, viewGroup, false);
-
+    View v = inflater.inflate(R.layout.new_voicemail_call_log_entry, viewGroup, false);
     NewVoicemailCallLogViewHolder newVoicemailCallLogViewHolder =
         new NewVoicemailCallLogViewHolder(v);
     return newVoicemailCallLogViewHolder;
@@ -45,12 +45,11 @@
   @Override
   public void onBindViewHolder(NewVoicemailCallLogViewHolder viewHolder, int position) {
     LogUtil.i("onBindViewHolder", "position" + position);
-    String name = values.get(position);
-    viewHolder.setPrimaryText(name);
+    viewHolder.bind(voicemailData.get(position));
   }
 
   @Override
   public int getItemCount() {
-    return values.size();
+    return voicemailData.size();
   }
 }
diff --git a/java/com/android/dialer/voicemail/listui/NewVoicemailCallLogViewHolder.java b/java/com/android/dialer/voicemail/listui/NewVoicemailCallLogViewHolder.java
index 239c946..9ec7684 100644
--- a/java/com/android/dialer/voicemail/listui/NewVoicemailCallLogViewHolder.java
+++ b/java/com/android/dialer/voicemail/listui/NewVoicemailCallLogViewHolder.java
@@ -18,18 +18,33 @@
 import android.support.v7.widget.RecyclerView;
 import android.view.View;
 import android.widget.TextView;
+import com.android.dialer.voicemail.datasources.VoicemailData;
 
 /** {@link RecyclerView.ViewHolder} for the new voicemail call log. */
 final class NewVoicemailCallLogViewHolder extends RecyclerView.ViewHolder {
 
   private final TextView primaryTextView;
+  private final TextView secondaryTextView;
+  private final TextView transcriptionTextView;
 
   NewVoicemailCallLogViewHolder(View view) {
     super(view);
     primaryTextView = (TextView) view.findViewById(R.id.primary_text);
+    secondaryTextView = (TextView) view.findViewById(R.id.secondary_text);
+    transcriptionTextView = (TextView) view.findViewById(R.id.transcription_text);
   }
 
-  public void setPrimaryText(String name) {
-    this.primaryTextView.setText(name);
+  void bind(VoicemailData voicemailData) {
+    primaryTextView.setText(voicemailData.name());
+    secondaryTextView.setText(getVoicemailLocationDateAndDuration(voicemailData));
+    transcriptionTextView.setText(voicemailData.transcription());
+  }
+
+  private String getVoicemailLocationDateAndDuration(VoicemailData voicemailData) {
+    return voicemailData.location()
+        + " · "
+        + voicemailData.date()
+        + " · "
+        + voicemailData.duration();
   }
 }
diff --git a/java/com/android/dialer/voicemail/listui/NewVoicemailFragment.java b/java/com/android/dialer/voicemail/listui/NewVoicemailFragment.java
index cb8cc31..3629b75 100644
--- a/java/com/android/dialer/voicemail/listui/NewVoicemailFragment.java
+++ b/java/com/android/dialer/voicemail/listui/NewVoicemailFragment.java
@@ -25,8 +25,10 @@
 import android.view.View;
 import android.view.ViewGroup;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.voicemail.datasources.VoicemailData;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Random;
 
 /** Fragment for Dialer Voicemail Tab. */
 public final class NewVoicemailFragment extends Fragment {
@@ -40,13 +42,23 @@
     recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
 
     // TODO(uabdullah): To be removed once we hook up the UI to the voicemail backend
-    List<String> input = new ArrayList<>();
+    List<VoicemailData> voicemailData = new ArrayList<>();
+    Random rand = new Random();
     for (int i = 0; i < 50; i++) {
-      input.add("Umer Abdullah " + i);
+      VoicemailData mocked =
+          VoicemailData.builder()
+              .setName("Fatima Abdullah " + i)
+              .setLocation("San Francisco, CA")
+              .setDate("March " + (rand.nextInt(30) + 1))
+              .setDuration("00:" + (rand.nextInt(50) + 10))
+              .setTranscription(
+                  "This is a transcription text message that literally means nothing.")
+              .build();
+      voicemailData.add(mocked);
     }
 
-    LogUtil.i("onCreateView", "size of input:" + input.size());
-    recyclerView.setAdapter(new NewVoicemailCallLogAdapter(input));
+    LogUtil.i("onCreateView", "size of input:" + voicemailData.size());
+    recyclerView.setAdapter(new NewVoicemailCallLogAdapter(voicemailData));
     return view;
   }
 }
diff --git a/java/com/android/dialer/voicemail/listui/res/layout/voicemail_call_log_entry.xml b/java/com/android/dialer/voicemail/listui/res/layout/new_voicemail_call_log_entry.xml
similarity index 69%
rename from java/com/android/dialer/voicemail/listui/res/layout/voicemail_call_log_entry.xml
rename to java/com/android/dialer/voicemail/listui/res/layout/new_voicemail_call_log_entry.xml
index 3986a0e..01c0ee1 100644
--- a/java/com/android/dialer/voicemail/listui/res/layout/voicemail_call_log_entry.xml
+++ b/java/com/android/dialer/voicemail/listui/res/layout/new_voicemail_call_log_entry.xml
@@ -21,7 +21,6 @@
     android:layout_height="wrap_content"
     android:layout_marginTop="@dimen/call_log_entry_top_margin"
     android:paddingTop="@dimen/call_log_entry_padding_top_start"
-    android:paddingBottom="@dimen/call_log_entry_padding_bottom_end"
     android:paddingStart="@dimen/call_log_entry_padding_top_start"
     android:paddingEnd="@dimen/call_log_entry_padding_bottom_end"
     android:gravity="center_vertical">
@@ -43,22 +42,47 @@
       android:layout_toStartOf="@+id/menu_button"
       android:orientation="vertical">
 
+    <TextView
+        android:id="@+id/primary_text"
+        style="@style/PrimaryText"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="@dimen/call_log_entry_photo_text_margin"
+        android:layout_gravity="center_vertical"/>
+
     <LinearLayout
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:orientation="horizontal">
 
+      <ImageView
+          android:layout_width="@dimen/voicemail_icon_size"
+          android:layout_height="@dimen/voicemail_icon_size"
+          android:layout_marginStart="@dimen/voicemail_icon_margin"
+          android:layout_gravity="center_vertical"
+          android:src="@drawable/quantum_ic_voicemail_vd_theme_24"
+          android:tint="@color/dialtacts_theme_color"
+          android:tintMode="multiply"
+          />
+
       <TextView
-          android:id="@+id/primary_text"
-          style="@style/PrimaryText"
+          android:id="@+id/secondary_text"
+          style="@style/SecondaryText"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_marginStart="@dimen/call_log_entry_photo_text_margin"/>
     </LinearLayout>
+
+    <TextView
+        android:id="@+id/transcription_text"
+        style="@style/SecondaryText"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="@dimen/call_log_entry_photo_text_margin"
+        android:layout_gravity="center_vertical"/>
+
   </LinearLayout>
 
-  <!--TODO(uabdullah): Figure out why android:src="@drawable/quantum_ic_more_vert_vd_theme_24"
-  causes http://gpaste/5400195130982400 -->
   <ImageView
       android:id="@+id/menu_button"
       android:layout_width="@dimen/call_log_entry_menu_button_size"
@@ -67,5 +91,6 @@
       android:layout_centerVertical="true"
       android:background="?android:attr/selectableItemBackgroundBorderless"
       android:scaleType="center"
+      android:src="@drawable/quantum_ic_more_vert_vd_theme_24"
       android:tint="@color/dialer_secondary_text_color"/>
 </RelativeLayout>
diff --git a/java/com/android/dialer/voicemail/listui/res/values/dimens.xml b/java/com/android/dialer/voicemail/listui/res/values/dimens.xml
index 4ef0fc1..3df5827 100644
--- a/java/com/android/dialer/voicemail/listui/res/values/dimens.xml
+++ b/java/com/android/dialer/voicemail/listui/res/values/dimens.xml
@@ -25,4 +25,6 @@
   <dimen name="call_log_entry_photo_text_margin">8dp</dimen>
   <dimen name="call_log_entry_menu_button_size">48dp</dimen>
 
+  <dimen name="voicemail_icon_margin">12dp</dimen>
+  <dimen name="voicemail_icon_size">16dp</dimen>
 </resources>
