diff --git a/ud/addFact.go b/ud/addFact.go
index c107636c365bfeedd449e67c9ebab426365551fd..3cb960518d585c2270adb3e20586e89ff9d55c37 100644
--- a/ud/addFact.go
+++ b/ud/addFact.go
@@ -31,7 +31,7 @@ func (m *Manager) addFact(inFact fact.Fact, myId *id.ID,
 	aFC addFactComms) (string, error) {
 
 	// get UD host
-	udHost, err := m.getOrAddUdHost()
+	udHost, err := m.getHost()
 	if err != nil {
 		return "", err
 	}
diff --git a/ud/confirmFact.go b/ud/confirmFact.go
index fb81b7a9ee78e373fb54aaa6504d22c4eb1fa35b..7ad5ddcc71e4de3fd24652d4002f2317e5685277 100644
--- a/ud/confirmFact.go
+++ b/ud/confirmFact.go
@@ -20,7 +20,7 @@ func (m *Manager) ConfirmFact(confirmationID, code string) error {
 // confirmFact is a helper function for ConfirmFact.
 func (m *Manager) confirmFact(confirmationID, code string, comm confirmFactComm) error {
 	// get UD host
-	udHost, err := m.getOrAddUdHost()
+	udHost, err := m.getHost()
 	if err != nil {
 		return err
 	}
diff --git a/ud/manager.go b/ud/manager.go
index 1b0ee3578d6e69abe86f2a1347cddebda27f118b..245670b0b7ecad208c0523fe4c330d92f55a47db 100644
--- a/ud/manager.go
+++ b/ud/manager.go
@@ -1,10 +1,6 @@
 package ud
 
 import (
-	"gitlab.com/elixxir/crypto/fastRNG"
-	"sync"
-	"time"
-
 	"github.com/pkg/errors"
 	jww "github.com/spf13/jwalterweatherman"
 	"gitlab.com/elixxir/client/event"
@@ -12,9 +8,10 @@ import (
 	store "gitlab.com/elixxir/client/ud/store"
 	"gitlab.com/elixxir/client/xxdk"
 	"gitlab.com/elixxir/crypto/contact"
+	"gitlab.com/elixxir/crypto/fastRNG"
 	"gitlab.com/elixxir/primitives/fact"
 	"gitlab.com/xx_network/comms/connect"
-	"gitlab.com/xx_network/primitives/id"
+	"sync"
 )
 
 // Manager is the control structure for the contacting the user discovery service.
@@ -76,7 +73,7 @@ func NewOrLoad(user udE2e, comms Comms, follower udNetworkStatus,
 		return nil, err
 	}
 
-	// Set alternative user discovery
+	// Set user discovery
 	err = m.setUserDiscovery(cert, contactFile, address)
 	if err != nil {
 		return nil, err
@@ -96,7 +93,7 @@ func NewOrLoad(user udE2e, comms Comms, follower udNetworkStatus,
 // NewManagerFromBackup builds a new user discover manager from a backup.
 // It will construct a manager that is already registered and restore
 // already registered facts into store. This will default to using the UD server as defined
-// by the NDF>
+// by the NDF.
 func NewManagerFromBackup(user udE2e, comms Comms, follower udNetworkStatus,
 	email, phone fact.Fact) (*Manager, error) {
 	jww.INFO.Println("ud.NewManagerFromBackup()")
@@ -134,7 +131,7 @@ func NewManagerFromBackup(user udE2e, comms Comms, follower udNetworkStatus,
 	}
 
 	// Create the user discovery host object
-	_, err = m.getOrAddUdHost()
+	_, err = m.getHost()
 	if err != nil {
 		return nil, errors.WithMessage(err, "User Discovery host object could "+
 			"not be constructed.")
@@ -181,96 +178,35 @@ func (m *Manager) GetStringifiedFacts() []string {
 	return m.store.GetStringifiedFacts()
 }
 
-// GetContact returns the contact for UD as retrieved from the NDF.
+// GetContact returns the contact.Contact for UD.
 func (m *Manager) GetContact() (contact.Contact, error) {
 	grp, err := m.user.GetReceptionIdentity().GetGroup()
 	if err != nil {
 		return contact.Contact{}, err
 	}
-	// Return alternative User discovery contact if set
-	if m.ud != nil {
-		// Unmarshal UD DH public key
-		alternativeDhPubKey := grp.NewInt(1)
-		if err := alternativeDhPubKey.
-			UnmarshalJSON(m.ud.dhPubKey); err != nil {
-			return contact.Contact{},
-				errors.WithMessage(err, "Failed to unmarshal UD "+
-					"DH public key.")
-		}
-
-		return contact.Contact{
-			ID:             m.ud.host.GetId(),
-			DhPubKey:       alternativeDhPubKey,
-			OwnershipProof: nil,
-			Facts:          nil,
-		}, nil
-	}
-
-	netDef := m.getCmix().GetInstance().GetPartialNdf().Get()
-
-	// Unmarshal UD ID from the NDF
-	udID, err := id.Unmarshal(netDef.UDB.ID)
-	if err != nil {
-		return contact.Contact{},
-			errors.Errorf("failed to unmarshal UD ID from NDF: %+v", err)
-	}
-
 	// Unmarshal UD DH public key
 	dhPubKey := grp.NewInt(1)
-	if err = dhPubKey.UnmarshalJSON(netDef.UDB.DhPubKey); err != nil {
+	if err := dhPubKey.
+		UnmarshalJSON(m.ud.dhPubKey); err != nil {
 		return contact.Contact{},
-			errors.WithMessage(err, "Failed to unmarshal UD DH "+
-				"public key.")
+			errors.WithMessage(err, "Failed to unmarshal UD "+
+				"DH public key.")
 	}
 
+	// Return User discovery contact
 	return contact.Contact{
-		ID:             udID,
+		ID:             m.ud.host.GetId(),
 		DhPubKey:       dhPubKey,
 		OwnershipProof: nil,
 		Facts:          nil,
 	}, nil
-}
-
-// getOrAddUdHost returns the current UD host for the UD ID found in the NDF.
-// If the host does not exist, then it is added and returned.
-func (m *Manager) getOrAddUdHost() (*connect.Host, error) {
-	// Return alternative User discovery service if it has been set
-	if m.ud != nil {
-		return m.ud.host, nil
-	}
 
-	netDef := m.getCmix().GetInstance().GetPartialNdf().Get()
-	if netDef.UDB.Cert == "" {
-		return nil, errors.New("NDF does not have User Discovery information, " +
-			"is there network access?: Cert not present.")
-	}
-
-	// Unmarshal UD ID from the NDF
-	udID, err := id.Unmarshal(netDef.UDB.ID)
-	if err != nil {
-		return nil, errors.Errorf("failed to "+
-			"unmarshal UD ID from NDF: %+v", err)
-	}
-
-	// Return the host, if it exists
-	host, exists := m.comms.GetHost(udID)
-	if exists {
-		return host, nil
-	}
-
-	params := connect.GetDefaultHostParams()
-	params.AuthEnabled = false
-	params.SendTimeout = 20 * time.Second
+}
 
-	// Add a new host and return it if it does not already exist
-	host, err = m.comms.AddHost(udID, netDef.UDB.Address,
-		[]byte(netDef.UDB.Cert), params)
-	if err != nil {
-		return nil, errors.WithMessage(err, "User Discovery host "+
-			"object could not be constructed.")
-	}
+// getHost returns the current UD host.
+func (m *Manager) getHost() (*connect.Host, error) {
+	return m.ud.host, nil
 
-	return host, nil
 }
 
 // loadOrNewManager is a helper function which loads from storage or
diff --git a/ud/manager_test.go b/ud/manager_test.go
index e6a1018baefa7b8963dcf4e946be0d82c2a6d20a..b214c9600302170cc0822b8806ac8c8fe6de943b 100644
--- a/ud/manager_test.go
+++ b/ud/manager_test.go
@@ -49,7 +49,7 @@ EnretBzQkeKeBwoB2u6NTiOmUjk=
 
 var testContact = `<xxc(2)LF2ccT+sdqh0AIKlFFeDOJdnxzbQQYhGStgxhOXmijIDkAZiB9kZo+Dl3bRSbBi5pXZ82rOu2IQXz9+5sspChvoccZqgC/dXGhlesmiNy/EbKxWtptTF4tcNyQxtnmCXg1p/HwKey4G2XDekTw86lq6Lpmj72jozvRWlQisqvWz/5deiPaeFGKDKC0OrrDFnIib7WnKqdYt4XyTKdmObnmbvdCbliZq0zBl7J40qKy5FypYXGlZjStIm0R1qtD4XHMZMsrMJEGxdM55zJdSzknXbR8MNahUrGMyUOTivXLHzojYLht0gFQifKMVWhrDjUoVQV43KOLPmdBwY/2Kc5KvVloDeuDXYY0i7tD63gNIp9JA3gJQUJymDdwqbS13riT1DMHHkdTzKEyGdHS+v2l7AVSlJBiTKuyM00FBNuXhhIcFR7ONFCf8cRPOPPBx3Q6iHNsvsca3KPNhwOJBgaQvHSkjIMsudiR954QbwG9rbi2vxVobIgWYMl5j6vlBS/9rfbE/uLdTEQZfNsLKDCIVCCI4I1bYZxZrDLPrfXTrN6W0sCLE7a/kRBQAAAgA7+LwJqiv9O1ogLnS4TYkSEg==xxc>`
 
-func TestManager_SetAlternativeUserDiscovery(t *testing.T) {
+func TestManager_setUserDiscovery(t *testing.T) {
 	m, _ := newTestManager(t)
 
 	altAddr := "0.0.0.0:11420"
diff --git a/ud/register.go b/ud/register.go
index 3708ee0790772653893344a35c90c5cc56bbc7ad..8ec2914d6ee2f6b94baaecfee438f2089fa63677 100644
--- a/ud/register.go
+++ b/ud/register.go
@@ -18,7 +18,7 @@ func (m *Manager) register(username string, networkSignature []byte,
 	rng csprng.Source, comm registerUserComms) error {
 
 	// Initialize or get host
-	udHost, err := m.getOrAddUdHost()
+	udHost, err := m.getHost()
 	if err != nil {
 		return errors.WithMessage(err,
 			"User Discovery host object could "+
diff --git a/ud/remove.go b/ud/remove.go
index 5502096c716110456247c9126f7f11d6da93a642..0972b7e770c89c8bf071bb63e9552908a6ddcc03 100644
--- a/ud/remove.go
+++ b/ud/remove.go
@@ -29,7 +29,7 @@ func (m *Manager) removeFact(f fact.Fact,
 	rFC removeFactComms) error {
 
 	// Get UD host
-	udHost, err := m.getOrAddUdHost()
+	udHost, err := m.getHost()
 	if err != nil {
 		return err
 	}
@@ -84,7 +84,7 @@ func (m *Manager) PermanentDeleteAccount(f fact.Fact) error {
 			"a username. Cannot remove fact %q", f.Fact))
 	}
 
-	udHost, err := m.getOrAddUdHost()
+	udHost, err := m.getHost()
 	if err != nil {
 		return err
 	}
diff --git a/ud/remove_test.go b/ud/remove_test.go
index a7cd32bc1e94347262147df7faa674d4e91aa000..53b61b3fae3070c08dad9d5d9d8c9d69503b0371 100644
--- a/ud/remove_test.go
+++ b/ud/remove_test.go
@@ -86,9 +86,9 @@ package ud
 //
 //	tRFC := testRFC{}
 //
-//	udHost, err := m.getOrAddUdHost()
+//	udHost, err := m.getHost()
 //	if err != nil {
-//		t.Fatalf("getOrAddUdHost error: %v", err)
+//		t.Fatalf("getHost error: %v", err)
 //	}
 //
 //	err = m.permanentDeleteAccount(f, mockId, &tRFC, udHost)