> For the complete documentation index, see [llms.txt](https://docs.mailofly.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mailofly.com/product-guides/contacts.md).

# Contacts & segments

**Contacts** are people you may email (email address plus optional fields). **Segments** are saved lists—audiences you attach to campaigns. A contact can belong to multiple segments.

## What they are

Contacts live in your workspace once; segments are lightweight groupings. Import CSV, add manually, or sync from a public Google Sheet into a segment so new rows become contacts automatically.

## How it helps

* **Reusable audiences** — define “Newsletter” or “Beta users” once and attach them to many campaigns.
* **Subscription state** — mark contacts subscribed or unsubscribed to respect opt-out without deleting history.
* **Custom fields** — store simple key/value data for personalization in templates.

## How to use it

Go to [Contacts](https://www.mailofly.com/user/contacts). Use the **Contacts** tab to search, add, or edit people; use **Segments** to create audiences and import CSV. **Google Sheet** links a published sheet to a segment for recurring imports.

### Segments vs “just tagging”

Segments are explicit send lists—your campaign always targets a segment, which keeps blast scope clear. You can still filter or export contacts across the whole database when needed.

## Compared to spreadsheet-only workflows

Spreadsheets are great for editing but weak for consent and send history. Mailofly keeps **one contact record** with status and logs while segments and sheets stay in sync for targeting.

## Related

* [Campaigns](/product-guides/campaigns.md) — choosing a segment
* [Templates](/product-guides/templates.md) — personalization fields
* [REST API: Contacts](/rest-api/contacts.md)
* [REST API: Segments](/rest-api/segments.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.mailofly.com/product-guides/contacts.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
