Contacts
In short
What is on a contact card in Reply, and how do I add a contact by hand?
Click a contact's name anywhere in Reply to open the contact card: an editable field pane on the left, and the Activity, Sequences and Emails tabs on the right. Create someone by hand from New contact, then Create manually, where First name is the only field you must fill. The Time Zone field can fill itself in from City, State and Country some time after the contact exists, and the Emails tab reports deliveries, views, clicks and replies for every thread.
Goal
One person's record, open and editable: the fields, the statuses Reply has assigned, the history, and every email thread you have with them. The object behind the card is described in Contacts.
Preconditions
A role that allows creating and editing contacts. See Permissions and roles. Adding people by hand is also something a plan can switch off in its own right, separately from the API route, so the option can be missing even for an administrator. Two ceilings shape what a card can hold: how many custom fields your team may define, and how many contacts one owner may store. Your plan sets both, and contact storage is counted per owner, so on a team each member has an allowance of their own rather than drawing on a shared pool. Your account's figures are on Limits.
Steps
- Click a contact anywhere a row is clickable: the People page, a sequence's People tab, or an account's contacts. The card slides in from the right showing the action buttons, the statuses and the field pane. The tabbed half sits collapsed beside it; click the opener arrow on the card's edge to expand it, and it stays expanded as you move between contacts.
- To add someone from scratch, open the People page, click New contact, and choose Create manually. An empty card opens. First name is the only mandatory field. Email may be left blank, but what you type has to be a valid address, and Phone has to be at least five characters. Switch on Add another prospect afterwards before saving and the form stays open for the next person.
- Answer the prompt if the address is already known. Reply checks the email whenever you type or change one. If the address matches one of your own contacts, Existing Contact Found offers to overwrite that record with what you typed; accepting updates the person who is already there, so no second record appears. If the person has already been emailed at that address, a confirmation warns first that reply tracking on the existing conversation will stop. If the match is a teammate's contact and your team runs in the Private mode, the save is refused and the message names the owner. A save can also be refused because you have reached your contact allowance; that check runs only when a record is being created, so editing people you already have is unaffected.
- Fill in the rest of the pane. The standard fields run Email, First name, Last name, Phone, Title, Company, Domain, Company size, Industry, Inbox Category, LinkedIn, LI Sales Navigator, LinkedIn Recruiter, City, State, Country and Time Zone, with your custom fields after them in the same scrollable pane. Time Zone is a picker rather than free text, and the Email field carries a small icon showing its latest validation verdict. Switching accounts on reshapes this pane: Company disappears and an Account picker replaces it, while Company size and Industry turn read-only and mirror whatever the linked account holds; Industry is even relabelled Account industry. Change those two on the account, not on the person.
- Put the fields in the order you work in. Click the field-manager button at the top of the pane and drag the entries; the order sticks for you across contacts.
- Read the Status: row under the name. It shows the lifecycle status the person holds in the sequence you opened them from, followed by each engagement status they have collected: contacted, opened, clicked, replied, auto-replied, bounced, opted out, called, to call, meeting booked. A trailing + and a number means the person is also in other sequences; hover the row for the per-sequence breakdown, since the statuses are worked out separately for each one.
- Move between the tabs on the right. Activity is the running log: who created the person, who changed the owner, which step went out, which enrichment filled which field, and the notes your team adds. Sequences splits into Active and History, each row carrying the sequence name, the status, deliveries, opens, replies and the owner. Emails holds the threads. A fourth tab, AI Insights, sits ahead of the others on accounts entitled to the AI SDR features.
- Read the Emails tab by its Source column. A row sent by a sequence carries the sequence name; One-shot email marks anything sent straight from a card or from a manual email task; Email delayed marks a direct email that is scheduled and has not gone out yet. Sent rows carry Delivered, Views, Clicks and Replies, each with a date and a count on hover. A scheduled row is highlighted, does not open, and carries a Cancel sending control; one that failed to go out is highlighted in red with a Sending error tag. The banner above the table is worth taking literally: these counts are grouped per thread, while the sequence reports group them per sequence.
- Act on the person from the row of buttons above the fields, which appears once the record has been saved: Call, Move to sequence, Move to lists, Remove from list(s), Change status and Set stage, with Send email, Send sms, Log a call, Blacklist, Unblacklist and Remove prospect either beside them or folded into a More menu when the panel is too narrow to hold them all.
- Write to the person from the card. Send email opens Direct Email; click Send to go now, or open the split button, pick Schedule for later, set the moment in Schedule Email and confirm. A scheduled message must be at least a minute out, and it lands in the Emails tab as a cancellable row until it goes.
When the time zone appears on its own
The Time Zone field is a drop-down you can set by hand at any moment, and Reply also tries to work it out from the contact's location. Country is the field that decides whether it tries at all: leave it empty and nothing is detected, however precise the rest is. City or State is what makes the answer specific, with a country on its own, Reply can only answer for places it already has a match for. Write the country out in full or use its two-letter code.
That second route does not finish while you watch. Reply re-examines contacts that still have no time zone on a short background cycle, so a person who arrived with an empty field can pick one up minutes or hours later, with nothing in the interface announcing it. If your plan does not include automatic time-zone detection, that cycle never touches your contacts and the field stays empty until someone fills it in.
Two consequences follow from how the cycle picks its candidates. A contact that already carries a time zone is left alone, so correcting a wrong value by hand is safe. And a contact whose location could not be resolved into a zone is marked as handled and is not examined again; adding the missing City or Country afterwards does not restart it, so set the zone on the card yourself.
During a CSV import you can ask for the same detection from the Time zone option on the Options step; the dialog warns there that turning it on might increase the import time by up to 30 minutes. One import quirk is worth knowing: Reply gives itself a limited number of failed outside lookups per file, so a spreadsheet carrying many unrecognizable locations can leave the rows near the end without a time zone even where those locations were perfectly good. See Import contacts.
Expected result
The card saves without a prompt, the new values appear on the People grid behind it, and a line describing the change is added to the Activity tab. A contact created by hand shows up in the grid immediately with Manually as its creation source.
Verification
Reopen the contact from the grid and check the pane holds what you typed. For the email history, compare a row in the Emails tab against the same thread in the inbox: the subject, the source and the reply should agree. For a scheduled email, confirm the row is highlighted and carries the cancel control; after you cancel it, the row disappears. For a time zone you expect to be detected, come back later in the day rather than refreshing right away, and filter the People page by Time Zone with Is not set to see everyone still waiting; the builder is on Filter contacts.
What happens next
A contact edited on the card feeds every surface that reads it: variables in templates resolve from these fields, sequence scheduling reads the time zone, and connected CRMs receive the update through their own sync. A reply to a direct email opens a thread in the inbox exactly as a sequence reply does; the only difference is where the thread started. What each status means, and when Reply assigns it, is in Statuses.
Common mistakes
- Typing a new email onto a contact who has already been written to. Reply asks first for a reason: reply tracking on the existing conversation stops at that point, and older replies no longer attach to the person.
- Reading the counts in the Emails tab as the contact's totals. They belong to one thread each; the campaign reports are the place for per-sequence numbers.
- Waiting for a time zone on a contact with no Country. That one field decides whether detection runs at all, and the contact is set aside afterwards rather than retried.
- Looking for the Company field on an account-enabled workspace. It is not hidden behind a setting on the card; the Account picker has taken its place.
- Treating Remove prospect as a way to take someone out of one sequence. It deletes the contact record; to take a person out of a single sequence, use the sequence's own removal action.
Related
- Contacts · Statuses
- Contact management
- Manage duplicate contacts · Contact was duplicated
- Keep contact data clean
Build with Reply
- REST API: docs.reply.io – read and write single contacts and their custom fields
- MCP: agents.reply.io/mcp – agents look a person up and update the record in place