The distinction of hepatocellular carcinoma (HCC), neuroendocrine tumor (NET) metastatic to the liver, and cholangiocarcinoma (CC) can sometimes be challenging on small biopsies. Tissue microarrays were constructed from HCCs, NETs, and CCs. The immunoprofile was evaluated using HepPar1, glypican-3 (GPC3), synaptophysin (SYN), chromogranin A (CHR), CD56, MOC-31, and pCEA. One hundred thirteen HCCs, 48 NETs, and 44 CCs were included. Of HCCs, 107 (95 %) expressed HepPar1 and/or GPC3, 52 (46 %) both, and 97 (88 %) marked with pCEA (canalicular pattern). Seven (6 %) expressed CD56, of which 3 (3 %) expressed SYN. All 7 HCCs that expressed CD56 and/or SYN also expressed HepPar1 and/or GPC3, and none of the HCCs expressed CHR. Fourteen (13 %) expressed MOC-31. All 48 NETs expressed at least one neuroendocrine marker: 47 (98 %) positive for SYN, 40 (83 %) for CHR, 39 (81 %) for CD56, and 34 (71 %) for all three markers. None expressed HepPar1 or GPC3. All 44 CCs showed at least focal reactivity with MOC-31 and pCEA (membranous/cytoplasmic). One (2 %) was positive for HepPar1, 4 (9 %) for GPC3, 1 (2 %) for SYN and CHR, and 7 (16 %) for CD56. HCCs rarely express CD56 and SYN, while all express either HepPar1 or GPC3. NETs do not express HepPar1 or GPC3 and almost always express SYN, while CHR and CD56 are seen in most cases. Rare CCs focally express HepPar1 and GPC3. Utilizing a limited staining panel can efficiently distinguish HCCs, NETs, and CCs and help avoid diagnostic pitfalls on small biopsies.