diff --git a/regolith/helpers/l_contactshelper.py b/regolith/helpers/l_contactshelper.py
index b3fc7c84..eb8f41f1 100644
--- a/regolith/helpers/l_contactshelper.py
+++ b/regolith/helpers/l_contactshelper.py
@@ -25,45 +25,56 @@ HELPER_TARGET = "l_contacts"
 def subparser(subpi):
     subpi.add_argument(
         "run",
-        help='run the lister. To see allowed optional arguments, type "regolith helper l_contacts"')
+        help='run the lister. To see allowed optional arguments, type "regolith helper l_contacts".')
+    subpi.add_argument(
+        "-v",
+        "--verbose",
+        action="store_true",
+        help="Increases the verbosity of the output.")
     subpi.add_argument(
         "-n",
         "--name",
-        help='name or name fragment (single argument only) to use to find contacts')
+        help='name or name fragment (single argument only) to use to find contacts.')
     subpi.add_argument(
         "-i",
         "--inst",
-        help='institution or an institution fragment (single argument only) to use to find contacts')
+        help='institution or an institution fragment (single argument only) to use to find contacts.')
     subpi.add_argument(
         "-d",
         "--date",
-        help='approximate date in ISO format (YYYY-MM-DD) corresponding to when the contact was entered in the database. Comes with a default range of 4 months centered around the date; change range using --range argument')
+        help='approximate date in ISO format (YYYY-MM-DD) corresponding to when the contact was entered in the database. '
+             'Comes with a default range of 4 months centered around the date; change range using --range argument.')
     subpi.add_argument(
         "-r",
         "--range",
-        help='range (in months) centered around date d specified by --date, i.e. (d +/- r/2)',
+        help='range (in months) centered around date d specified by --date, i.e. (d +/- r/2).',
         default=4)
     subpi.add_argument(
         "-o",
         "--notes",
-        help='fragment (single argument only) to be found in the notes section of a contact'
+        help='fragment (single argument only) to be found in the notes section of a contact.'
     )
     subpi.add_argument(
         "-f",
         "--filter",
         nargs="+",
-        help='Search this collection by giving key element pairs'
+        help='Search this collection by giving key element pairs.'
     )
     subpi.add_argument(
         "-k",
         "--keys",
         nargs="+",
-        help='Specify what keys to return values from when running --filter. If no argument is given the default is just the id.'
+        help='Specify what keys to return values from when running --filter. '
+             'If no argument is given the default is just the id.'
     )
     return subpi
 
 
-def stringify(con):
+def stringify(con, verbose):
+    if verbose ==True:
+        return f"id: {con.get('_id')}    name: {con.get('name')}    email: {con.get('email')}\n" \
+               f"institution: {con.get('institution')}    department: {con.get('department')}\n" \
+               f"notes: {con.get('notes')}\naka: {con.get('aka')}"
     return f"name: {con.get('name')}, institution: {con.get('institution')}, email: {con.get('email', 'missing')}"
 
 
@@ -102,21 +113,24 @@ class ContactsListerHelper(SoutHelperBase):
 
     def sout(self):
         rc = self.rc
+        verbose = False
+        if rc.verbose:
+            verbose = True
         if rc.filter:
             collection = key_value_pair_filter(self.gtx["contacts"], rc.filter)
         else:
             collection = self.gtx["contacts"]
-        def_l = set(stringify(i) for i in
+        def_l = set(stringify(i, verbose) for i in
                     self.gtx['contacts'])
         if rc.name:
-            namel = set(stringify(i) for i in
+            namel = set(stringify(i, verbose) for i in
                         fragment_retrieval(
                             collection, [
                                 "_id", "aka", "name"], rc.name))
         else:
             namel = def_l
         if rc.inst:
-            instl = set(stringify(i) for i in
+            instl = set(stringify(i, verbose) for i in
                         fragment_retrieval(
                             collection,
                             ["institution"],
@@ -124,7 +138,7 @@ class ContactsListerHelper(SoutHelperBase):
         else:
             instl = def_l
         if rc.notes:
-            notel = set(stringify(i) for i in
+            notel = set(stringify(i, verbose) for i in
                         fragment_retrieval(
                             collection, [
                                 "notes"], rc.notes))
@@ -145,7 +159,7 @@ class ContactsListerHelper(SoutHelperBase):
             for contact in collection:
                 curr_d = get_dates(contact)['date']
                 if is_current(temp_dict, now=curr_d):
-                    date_list.append(stringify(contact))
+                    date_list.append(stringify(contact, verbose))
             datel = set(date_list)
         else:
             datel = def_l

ENH: l_contacts has -v option that lists everything
pretty print it the same as in u_contact
diff --git a/tests/test_helpers.py b/tests/test_helpers.py
index 291b8dd9..22c3c4d3 100644
--- a/tests/test_helpers.py
+++ b/tests/test_helpers.py
@@ -79,6 +79,12 @@ helper_map = [
       "--notes", "coffee", "--date", "2019-01-15", "--range", "2"],
      ""
      ),
+    (["helper", "l_contacts", "run", "--verbose"],
+     "id: afriend    name: Anthony B Friend    email: friend@deed.com\n"
+     "institution: columbiau    department: physics\n"
+     "notes: ['The guy I meet for coffee sometimes']\n"
+     "aka: ['A. B. Friend', 'AB Friend', 'Tony Friend']\n"
+     ),
     (["helper", "u_milestone", "20sb_firstprojectum", "--index", "5",
       "--status", "converged","--due_date", "2020-06-01"],
      "20sb_firstprojectum has been updated in projecta\n"

pip install -e .[dev]
parse_log_pytest
requirements.txt
pytest bibtexparser coverage codecov
apt-get update apt-get install -y gcc
3.8
requirements/run.txt requirements/test.txt
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
bibtexparser==1.4.3
Cerberus==1.3.7
certifi==2025.1.31
charset-normalizer==3.4.1
codecov==2.1.13
coverage==7.6.1
dnspython==2.6.1
docutils==0.20.1
et_xmlfile==2.0.0
exceptiongroup==1.2.2
idna==3.10
iniconfig==2.1.0
Jinja2==3.1.6
MarkupSafe==2.1.5
nameparser==1.1.3
numpy==1.24.4
openpyxl==3.1.5
packaging==24.2
pandas==2.0.3
pluggy==1.5.0
pymongo==4.10.1
pyparsing==3.1.4
pytest==8.3.5
python-dateutil==2.9.0.post0
pytz==2025.2
-e git+https://github.com/regro/regolith.git@48e2127f5e5b3e32d730dab3ca6ba418d6941078#egg=regolith
requests==2.32.3
rever==0.3.3
ruamel.yaml==0.18.10
ruamel.yaml.clib==0.2.8
six==1.17.0
tomli==2.2.1
tzdata==2025.2
urllib3==2.2.3
xonsh==0.14.0

name: regolith
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=3.0.16=h5eee18b_0
  - pip=24.2=py38h06a4308_0
  - python=3.8.20=he870216_0
  - readline=8.2=h5eee18b_0
  - setuptools=75.1.0=py38h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - wheel=0.44.0=py38h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - bibtexparser==1.4.3
      - cerberus==1.3.7
      - certifi==2025.1.31
      - charset-normalizer==3.4.1
      - codecov==2.1.13
      - coverage==7.6.1
      - dnspython==2.6.1
      - docutils==0.20.1
      - et-xmlfile==2.0.0
      - exceptiongroup==1.2.2
      - idna==3.10
      - iniconfig==2.1.0
      - jinja2==3.1.6
      - markupsafe==2.1.5
      - nameparser==1.1.3
      - numpy==1.24.4
      - openpyxl==3.1.5
      - packaging==24.2
      - pandas==2.0.3
      - pluggy==1.5.0
      - pymongo==4.10.1
      - pyparsing==3.1.4
      - pytest==8.3.5
      - python-dateutil==2.9.0.post0
      - pytz==2025.2
      - requests==2.32.3
      - rever==0.3.3
      - ruamel-yaml==0.18.10
      - ruamel-yaml-clib==0.2.8
      - six==1.17.0
      - tomli==2.2.1
      - tzdata==2025.2
      - urllib3==2.2.3
      - xonsh==0.14.0
prefix: /opt/conda/envs/regolith

tests/test_helpers.py::test_helper_python[hm22]
tests/test_helpers.py::test_helper_python[hm4]
tests/test_helpers.py::test_helper_python[hm0] tests/test_helpers.py::test_helper_python[hm1] tests/test_helpers.py::test_helper_python[hm2] tests/test_helpers.py::test_helper_python[hm3] tests/test_helpers.py::test_helper_python[hm5] tests/test_helpers.py::test_helper_python[hm6] tests/test_helpers.py::test_helper_python[hm7] tests/test_helpers.py::test_helper_python[hm8] tests/test_helpers.py::test_helper_python[hm9] tests/test_helpers.py::test_helper_python[hm10] tests/test_helpers.py::test_helper_python[hm11] tests/test_helpers.py::test_helper_python[hm12] tests/test_helpers.py::test_helper_python[hm13] tests/test_helpers.py::test_helper_python[hm14] tests/test_helpers.py::test_helper_python[hm15] tests/test_helpers.py::test_helper_python[hm16] tests/test_helpers.py::test_helper_python[hm17] tests/test_helpers.py::test_helper_python[hm18] tests/test_helpers.py::test_helper_python[hm19] tests/test_helpers.py::test_helper_python[hm20] tests/test_helpers.py::test_helper_python[hm21] tests/test_helpers.py::test_helper_python[hm23] tests/test_helpers.py::test_helper_python[hm24] tests/test_helpers.py::test_helper_python[hm25] tests/test_helpers.py::test_helper_python[hm26] tests/test_helpers.py::test_helper_python[hm27] tests/test_helpers.py::test_helper_python[hm28] tests/test_helpers.py::test_helper_python[hm29] tests/test_helpers.py::test_helper_python[hm30] tests/test_helpers.py::test_helper_python[hm31] tests/test_helpers.py::test_helper_python[hm32] tests/test_helpers.py::test_helper_python[hm33] tests/test_helpers.py::test_helper_python[hm34] tests/test_helpers.py::test_helper_python[hm35] tests/test_helpers.py::test_helper_python[hm36] tests/test_helpers.py::test_helper_python[hm37] tests/test_helpers.py::test_helper_python[hm38] tests/test_helpers.py::test_helper_python[hm39] tests/test_helpers.py::test_helper_python[hm40] tests/test_helpers.py::test_helper_python[hm41] tests/test_helpers.py::test_helper_python[hm42] tests/test_helpers.py::test_helper_python[hm43] tests/test_helpers.py::test_helper_python[hm44] tests/test_helpers.py::test_helper_python[hm45] tests/test_helpers.py::test_helper_python[hm46] tests/test_helpers.py::test_helper_python[hm47]
regolith/helpers/l_contactshelper.py
regolith/helpers/l_contactshelper.py