# Shredstream Troubleshooting

> Diagnose provisioning, UDP routing, packet receipt, deshredding, duplicates, gaps, and fork behavior.

Canonical: https://nolimitnodes.com/docs/api-reference/shredstream/troubleshooting

## Status is `error`

Check the error shown in Dashboard → Shredstream. Confirm that the target is a public IPv4 address and that the UDP port is between `1` and `65535`. Save again after correcting it.

## Status is `active`, but no packets arrive

1. Confirm that the dashboard target matches the host&apos;s public IP and port.
2. Run `tcpdump` on the host.
3. Check the cloud security group and host firewall.
4. Check NAT and container port forwarding.
5. Confirm that your process listens on `0.0.0.0`, not only `127.0.0.1`.

```bash
sudo tcpdump -n -i any "udp and dst port 20000"
sudo ss -lunp | grep 20000
```

## Packets arrive, but the client decodes nothing

Confirm that your receiver accepts the Jito-compatible raw shred format. Record bounded packet samples, then inspect packet size, slot, index, shred type, and deshred errors. Do not log the full feed in production.

## You see duplicates or gaps

Duplicates, reordering, and incomplete sets can occur in raw UDP delivery. Deduplicate by protocol identifiers. Use coding shreds for recovery. Track incomplete sets and expire them rather than allowing unbounded memory growth.

## A detected transaction never confirms

The transaction may have failed execution or belonged to a losing fork. Raw shreds contain neither execution status nor commitment. Confirm through [Yellowstone gRPC](/docs/api-reference/grpc/overview) or HTTP RPC.

## Delivery stopped after a plan change

Shredstream requires an Ultra trial, paid Ultra plan, or eligible Enterprise account. Downgrade, cancellation, or expiration of an unconverted Ultra trial removes the destination.
