diff --git a/protocols/bgp/metrics/bgp_peer_metrics.go b/protocols/bgp/metrics/bgp_peer_metrics.go
index 4c70b843d01ffddc2c0d80a7552bfcf8bf6ffe1b..f12b3275186a093d887a40caf1f1db8574fe9c6c 100644
--- a/protocols/bgp/metrics/bgp_peer_metrics.go
+++ b/protocols/bgp/metrics/bgp_peer_metrics.go
@@ -6,6 +6,16 @@ import (
 	bnet "github.com/bio-routing/bio-rd/net"
 )
 
+const (
+	StateDown        = 0
+	StateIdle        = 1
+	StateConnect     = 2
+	StateActive      = 3
+	StateOpenSent    = 4
+	StateOpenConfirm = 5
+	StateEstablished = 6
+)
+
 // BGPPeerMetrics provides metrics for one BGP session
 type BGPPeerMetrics struct {
 	// IP is the remote IP of the peer
diff --git a/protocols/bgp/server/metrics_service.go b/protocols/bgp/server/metrics_service.go
index 1f1fa90b02fa85478a155360167cb5ff92dc31ab..b2b457e2f6c16d600d374ccf08f9031b920edbc6 100644
--- a/protocols/bgp/server/metrics_service.go
+++ b/protocols/bgp/server/metrics_service.go
@@ -4,16 +4,6 @@ import (
 	"github.com/bio-routing/bio-rd/protocols/bgp/metrics"
 )
 
-const (
-	stateDown        = 0
-	stateIdle        = 1
-	stateConnect     = 2
-	stateActive      = 3
-	stateOpenSent    = 4
-	stateOpenConfirm = 5
-	stateEstablished = 6
-)
-
 type metricsService struct {
 	server *bgpServer
 }
@@ -51,7 +41,7 @@ func (b *metricsService) metricsForPeer(peer *peer) *metrics.BGPPeerMetrics {
 
 	fsm := fsms[0]
 	m.State = b.statusFromFSM(fsm)
-	m.Up = m.State == stateEstablished
+	m.Up = m.State == metrics.StateEstablished
 
 	if m.Up {
 		m.Since = fsm.establishedTime
@@ -83,18 +73,18 @@ func (b *metricsService) metricsForFamily(family *fsmAddressFamily) *metrics.BGP
 func (b *metricsService) statusFromFSM(fsm *FSM) uint8 {
 	switch fsm.state.(type) {
 	case *idleState:
-		return stateIdle
+		return metrics.StateIdle
 	case *connectState:
-		return stateConnect
+		return metrics.StateConnect
 	case *activeState:
-		return stateActive
+		return metrics.StateActive
 	case *openSentState:
-		return stateOpenSent
+		return metrics.StateOpenSent
 	case *openConfirmState:
-		return stateOpenConfirm
+		return metrics.StateOpenConfirm
 	case *establishedState:
-		return stateEstablished
+		return metrics.StateEstablished
 	}
 
-	return stateDown
+	return metrics.StateDown
 }
diff --git a/protocols/bgp/server/metrics_service_test.go b/protocols/bgp/server/metrics_service_test.go
index f98ec61ef378185bb59f71892c102eacd28ebc7b..486f7bff27bf5766390ce67d764c232ad9830b8c 100644
--- a/protocols/bgp/server/metrics_service_test.go
+++ b/protocols/bgp/server/metrics_service_test.go
@@ -57,7 +57,7 @@ func TestMetrics(t *testing.T) {
 						UpdatesSent:     4,
 						VRF:             "inet.0",
 						Up:              true,
-						State:           stateEstablished,
+						State:           metrics.StateEstablished,
 						Since:           establishedTime,
 						AddressFamilies: []*metrics.BGPAddressFamilyMetrics{
 							{
@@ -95,7 +95,7 @@ func TestMetrics(t *testing.T) {
 						ASN:      202739,
 						LocalASN: 201701,
 						VRF:      "inet.0",
-						State:    stateIdle,
+						State:    metrics.StateIdle,
 						AddressFamilies: []*metrics.BGPAddressFamilyMetrics{
 							{
 								AFI:  packet.IPv4AFI,
@@ -128,7 +128,7 @@ func TestMetrics(t *testing.T) {
 						ASN:      202739,
 						LocalASN: 201701,
 						VRF:      "inet.0",
-						State:    stateActive,
+						State:    metrics.StateActive,
 						AddressFamilies: []*metrics.BGPAddressFamilyMetrics{
 							{
 								AFI:  packet.IPv4AFI,
@@ -161,7 +161,7 @@ func TestMetrics(t *testing.T) {
 						ASN:      202739,
 						LocalASN: 201701,
 						VRF:      "inet.0",
-						State:    stateOpenSent,
+						State:    metrics.StateOpenSent,
 						AddressFamilies: []*metrics.BGPAddressFamilyMetrics{
 							{
 								AFI:  packet.IPv4AFI,
@@ -194,7 +194,7 @@ func TestMetrics(t *testing.T) {
 						ASN:      202739,
 						LocalASN: 201701,
 						VRF:      "inet.0",
-						State:    stateOpenConfirm,
+						State:    metrics.StateOpenConfirm,
 						AddressFamilies: []*metrics.BGPAddressFamilyMetrics{
 							{
 								AFI:  packet.IPv4AFI,
@@ -227,7 +227,7 @@ func TestMetrics(t *testing.T) {
 						ASN:      202739,
 						LocalASN: 201701,
 						VRF:      "inet.0",
-						State:    stateConnect,
+						State:    metrics.StateConnect,
 						AddressFamilies: []*metrics.BGPAddressFamilyMetrics{
 							{
 								AFI:  packet.IPv4AFI,