diff --git a/docs/docs.json b/docs/docs.json
index 659926d22..0b3743ac3 100644
--- a/docs/docs.json
+++ b/docs/docs.json
@@ -53,6 +53,8 @@
"pages": [
"guides/creating-your-first-resume",
"guides/managing-resumes-from-the-dashboard",
+ "guides/tracking-job-applications",
+ "guides/importing-applications-from-csv",
"guides/importing-resumes",
"guides/choosing-a-template",
"guides/selecting-page-format",
diff --git a/docs/guides/importing-applications-from-csv.mdx b/docs/guides/importing-applications-from-csv.mdx
new file mode 100644
index 000000000..c602b0339
--- /dev/null
+++ b/docs/guides/importing-applications-from-csv.mdx
@@ -0,0 +1,110 @@
+---
+title: "Importing applications from CSV"
+description: "Import existing job applications into the Application Tracker from a CSV file or pasted spreadsheet rows."
+---
+
+Use CSV import when you already track applications in a spreadsheet and want to move them into Reactive Resume.
+
+## Open CSV import
+
+
+
+ In the dashboard sidebar, click **Applications**.
+
+
+
+ If you have no applications yet, click **Import from CSV** in the empty state. Otherwise, click **Import CSV** in the
+ page header.
+
+
+
+
+
+
+
+## Prepare your CSV
+
+The importer uses the first row as headers. Each imported row must include a company and role.
+
+Supported headers include:
+
+| Field | Recognized headers |
+| --- | --- |
+| **Company** | `Company`, `Employer`, `Organization` |
+| **Role** | `Role`, `Title`, `Position`, `Job Title` |
+| **Stage** | `Stage`, `Status` |
+| **Location** | `Location` |
+| **Salary** | `Salary`, `Salary Range`, `Compensation` |
+| **Source** | `Source` |
+| **Notes** | `Notes`, `Note` |
+| **Job posting URL** | `URL`, `Link`, `Job URL`, `Job Posting` |
+| **Tags** | `Tags` |
+
+Tags can be separated with commas, semicolons, or vertical bars.
+
+```csv
+Company,Role,Stage,Location,Salary,Source,Tags
+Stripe,Frontend Engineer,applied,Remote,$180k,LinkedIn,remote;react
+```
+
+## Import applications
+
+
+
+ Upload a `.csv` file, or paste CSV rows directly into the **CSV data** field.
+
+
+
+ Reactive Resume shows how many rows are ready to import, which columns it recognized, and how many rows were skipped.
+
+
+
+ Rows without a company or role are skipped. Add the missing values before importing if you want those rows included.
+
+
+
+ Click **Import**. Imported applications are added to your Application Tracker.
+
+
+
+## Use valid stages
+
+The **Stage** column is optional. If you include it, use one of these values:
+
+- `saved`
+- `applied`
+- `screening`
+- `interview`
+- `offer`
+- `rejected`
+
+If a row has an unrecognized stage, the importer ignores that stage value and uses the default application stage.
+
+## Import large files
+
+Reactive Resume imports up to 500 applications at a time. If your CSV has more than 500 valid rows, split it into smaller files and import each file separately.
+
+
+ Import first, then use the table view to select multiple applications and apply tags, move stages, archive rows, or delete rows in bulk.
+
+
+## Troubleshooting
+
+### Some rows were skipped
+
+Make sure every row has both a company and a role. These fields are required.
+
+### A column was not recognized
+
+Rename the header to one of the recognized names in the table above, then import again.
+
+### Tags did not split correctly
+
+Separate tags with commas, semicolons, or vertical bars, such as `remote;react` or `frontend|senior`.
+
+### A stage did not import
+
+Use lowercase stage values such as `applied` or `interview`. Custom stages are not supported.
diff --git a/docs/guides/tracking-job-applications.mdx b/docs/guides/tracking-job-applications.mdx
new file mode 100644
index 000000000..154719644
--- /dev/null
+++ b/docs/guides/tracking-job-applications.mdx
@@ -0,0 +1,151 @@
+---
+title: "Tracking job applications"
+description: "Use the Application Tracker to record jobs, link the resume you sent, manage follow-ups, and move applications through your hiring pipeline."
+---
+
+The **Application Tracker** helps you keep your job search connected to the resumes you create in Reactive Resume. Each application can store the company, role, stage, job posting, resume, cover letter, contacts, notes, and follow-up details.
+
+## Open the Application Tracker
+
+
+
+ Open Reactive Resume and sign in to your account.
+
+
+
+ In the dashboard sidebar, click **Applications**.
+
+
+
+
+
+
+
+## Add an application
+
+
+
+ If this is your first application, use the button in the empty state. Otherwise, use **Add application** in the page header.
+
+
+
+ Add the **Company** and **Role / title**. These two fields are required. You can also add the location, salary range,
+ source, tags, notes, and follow-up details.
+
+
+
+ Pick the current stage of the opportunity.
+
+
+
+ Choose a Reactive Resume from the **Resume** field when you want to keep a live link to the resume. You can also upload
+ the exact resume PDF you sent.
+
+
+
+ If you sent a cover letter, attach the PDF in the **Cover letter** field.
+
+
+
+ Click **Add to pipeline**.
+
+
+
+
+
+
+
+
+ Linking a Reactive Resume enables AI match scoring and resume tailoring for that application.
+
+
+## Use AI to fill a job posting
+
+If you have an AI provider configured, paste a job posting URL at the top of the add form and click **Auto-fill**. Reactive Resume reads the posting and fills in what it can, such as company, role, location, salary, and job description.
+
+If auto-fill fails or the posting is private, paste the job description manually.
+
+For AI setup, see [Using Artificial Intelligence](/guides/using-ai).
+
+## Understand application stages
+
+Applications move through fixed stages:
+
+| Stage | Use it when |
+| --- | --- |
+| **Saved** | You found a role but have not applied yet. |
+| **Applied** | You submitted the application. |
+| **Screening** | A recruiter, hiring manager, or automated process is reviewing you. |
+| **Interview** | You are in an interview process. |
+| **Offer** | You received an offer. |
+| **Rejected** | The company declined or the opportunity ended. |
+
+You can move applications by dragging cards on the board, using the action menu, using bulk actions in the table, or opening an application and clicking **Move to**.
+
+## Choose a view
+
+The Application Tracker has three views:
+
+| View | Best for |
+| --- | --- |
+| **Board** | Moving applications through stages visually. |
+| **Table** | Reviewing many applications, selecting rows, and making bulk updates. |
+| **Insights** | Understanding your pipeline, response rate, interviews, offers, sources, and application velocity. |
+
+Use search, tag filters, sorting, and the archived toggle to narrow the list.
+
+
+
+
+
+## Update an application
+
+Open an application from the board or table to view its detail panel. From there you can:
+
+- edit the application details;
+- move it to the next stage;
+- open the original job posting;
+- attach or replace resume and cover letter PDFs;
+- add contacts;
+- add follow-up information;
+- add notes to the timeline;
+- archive, unarchive, mark rejected, or delete the application.
+
+Stage changes and notes appear in the timeline automatically.
+
+
+
+
+
+## Use Application Copilot
+
+Application Copilot appears in the application detail panel. It can:
+
+- score how well the linked resume matches the job description;
+- create a tailored copy of the linked resume;
+- draft a cover letter;
+- draft a follow-up message.
+
+Match scoring and resume tailoring require both a linked Reactive Resume and a job description. Drafting also works from the application and resume context available in the tracker.
+
+
+ Review AI-generated content before sending it. You are responsible for the final resume, cover letter, and follow-up message.
+
+
+## Archive or delete applications
+
+Archive applications you want to hide from the active board without deleting their history. Use the **Archived** toggle to view archived applications and unarchive them later.
+
+Delete an application only when you no longer need its record. Deleting an application removes its timeline and cannot be undone.
diff --git a/docs/images/guides/importing-applications-from-csv/screenshot-1.webp b/docs/images/guides/importing-applications-from-csv/screenshot-1.webp
new file mode 100644
index 000000000..66187fd42
Binary files /dev/null and b/docs/images/guides/importing-applications-from-csv/screenshot-1.webp differ
diff --git a/docs/images/guides/tracking-job-applications/screenshot-1.webp b/docs/images/guides/tracking-job-applications/screenshot-1.webp
new file mode 100644
index 000000000..c393619c6
Binary files /dev/null and b/docs/images/guides/tracking-job-applications/screenshot-1.webp differ
diff --git a/docs/images/guides/tracking-job-applications/screenshot-2.webp b/docs/images/guides/tracking-job-applications/screenshot-2.webp
new file mode 100644
index 000000000..d8ca060a3
Binary files /dev/null and b/docs/images/guides/tracking-job-applications/screenshot-2.webp differ
diff --git a/docs/images/guides/tracking-job-applications/screenshot-3.webp b/docs/images/guides/tracking-job-applications/screenshot-3.webp
new file mode 100644
index 000000000..801404dfd
Binary files /dev/null and b/docs/images/guides/tracking-job-applications/screenshot-3.webp differ
diff --git a/docs/images/guides/tracking-job-applications/screenshot-4.webp b/docs/images/guides/tracking-job-applications/screenshot-4.webp
new file mode 100644
index 000000000..c99e2b1d1
Binary files /dev/null and b/docs/images/guides/tracking-job-applications/screenshot-4.webp differ