Back to Support

User Guide

Welcome to the Swig Leasing Bridge — the canonical leasing data platform that bridges Yardi exports into the 2027 lease schema, builds an editable forecast model, and proves that model against the analyst's golden SAP working budget. This guide walks you through every workflow, from your first upload to the final acceptance test.


Core Concepts

A few ideas underpin everything in the app:

  • Properties — each building tracked in the system, identified by a code (e.g. SWIG-001) and an optional building RSF.
  • Snapshots — immutable, point-in-time captures of leasing data parsed from an uploaded workbook. Every upload creates a new snapshot; nothing is ever overwritten.
  • Sources vs. Forecast Model — uploaded Yardi files (LSR, SMR) and the golden SAP budget are read-only source snapshots. The single Forecast Model you build from them is the only editable, validated artifact.
  • Sections — the five logical groupings of leasing economics: Rent Roll, Free Rent, Tenant Improvements (TI), Leasing Commissions (LC), and Other Concessions.
  • Layered edits — analyst overrides applied on top of the model as a versioned overlay. The underlying source values are never destroyed.
  • Golden reference — the analyst's hand-built SAP Working Budget. The model is graded against it; a perfect match is the POC acceptance gate.

The POC Workflow

Each property page opens with a six-step stepper that mirrors the end-to-end proof-of-concept. Work through it top to bottom:

  1. Ingest Yardi LSR — upload the Lease Status Report, the projected rent roll.
  2. Ingest Yardi SMR — upload the Space Market Rate book, the round-trip assumptions.
  3. Build the Forecast Model — merge LSR + SMR into one editable, validated model.
  4. Adjust the model — apply analyst overrides to the merged forecast.
  5. Load the Golden SAP model — ingest the analyst's Working Budget as the reference.
  6. Reconcile vs Golden — compare the final model against the golden file. This is the acceptance test — it runs automatically once both exist, and the stepper shows a live pass/fail right here.

The stepper tracks progress automatically and surfaces the next action (a hint, a button, or a link) at each step.


Properties

From the home page you'll see every configured property as a card.

Creating a property

Click New property and provide a name, an optional code (auto-generated if blank), and an optional building RSF. The code is what the parser matches Yardi files against, so keep it consistent with your Yardi setup.

Opening a workspace

Click any property card to enter its workspace. From there you can ingest workbooks, build and adjust the forecast model, reconcile snapshots, and export Yardi-ready files. Use Switch property to jump back to the list.


Ingesting Workbooks

Drag a workbook onto the Ingest workbook dropzone (or click to browse). The format is auto-detected on upload, and re-uploading any file always creates a new immutable snapshot rather than overwriting the old one.

Accepted formats

WorkbookRoleWhat it provides
Yardi Lease Status Report (LSR)SourceThe projected rent roll
Yardi Space Market Rate (SMR)SourceThe round-trip assumption book
SAP Working BudgetGolden referenceThe analyst's hand-built target

Yardi Lease Status Report (LSR)

The LSR is the canonical input. Export it from Yardi as .xlsx (single sheet, default column layout). On ingest, the parser reads the metadata header (Property:, Book:, Risk Date:) and maps every row's Risk × Speculation Type into one of our canonical sections (In-Place, Renewals, Spec Suites, Expiring Non-Renewals, Vacant Throughout).

Yardi Space Market Rate (SMR)

The SMR carries the round-trip leasing assumptions that pair with the LSR. When the model is exported back to Yardi's SMR import, the LC 1 value is written as a PSF rate (e.g. $5.00), matching Yardi's import expectation — not a flat dollar total.

SAP Working Budget (Golden reference)

This is the analyst's hand-built budget. Ingest it as the golden reference so the model can be reconciled against it in step 6. It is the source of truth for the acceptance test and retires once the POC passes.

Property matching

The parser matches the workbook's Property: header against your configured properties (exact match, then case-insensitive contains). If matching fails you'll get an actionable error pointing you to create the property first.

NER unit

Per Swig's leasing team (confirmed by Ernie Sioson, May 2026), Yardi's NER column is always Annual $ total (rent/year). The parser converts it on ingest using:

Rent PSF/mo = NER ÷ SF ÷ 12

New snapshots default to this convention. The snapshot page shows the active unit and lets you override it (Annual $/SF, Monthly $ total, Monthly $/SF) only if a future Yardi configuration changes the convention — the other units are sales-related and not currently used in Swig's setup.


Sources vs. the Forecast Model

This distinction is central to the app:

  • Source snapshots (LSR, SMR, SAP budget) open as a read-only raw table. You cannot edit them — they preserve exactly what Yardi or the analyst provided.
  • The Forecast Model is the only editable, validated snapshot. All analyst work — overrides, added rows, validation — happens here. The model merges each source file's facts with the analyst's assumptions.

A banner on every source snapshot reminds you that editing and validation live on the Forecast Model.


Building & Adjusting the Forecast Model

Building

Once at least one source is ingested, click Build model (in the Forecast Model section or via step 3 of the stepper). The builder merges LSR + SMR into a single editable forecast. The result reports how many suites matched across sources and how many were SMR-only. Use Rebuild model any time the sources change.

Section tabs

Open the model to see one tab per canonical section plus a Summary tab. Each tab badge shows the row count and any validation errors.

Editing cells

Click any cell in any section tab, type the new value, and press Enter or click away. Currency, percentage, and date fields are validated automatically. Edits are stored as a layered, versioned overlay (PRD FR-10) — the original value is never destroyed and can always be reverted via the revert icon next to an edited cell.

Adding and removing rows

You can insert net-new rows (e.g. spec deals) into a section and remove rows you don't want. Removing a row prompts for an optional reason, which is saved with the change. Removed rows are kept struck-through for traceability but are excluded from counts, totals, validation, and exports — and can be restored at any time via the Undo action, either inline on the section tab or from the Changes tab.

Change log (Changes tab)

Every model page has a Changes tab alongside Summary and the section tabs. It's the audit trail for everything an analyst has done to the model, independent of any snapshot-vs-snapshot reconciliation:

  • Rolled-up totals — cells edited, rows added, rows removed — framed as before = auto-built model, after = current (final) model.
  • One row per changed cell or row, showing the section, suite, tenant, field, before/after values, and who made the change and when.
  • An editable Reason field on every entry, so overrides are self-documenting.
  • An Undo action on removed rows, restoring them without losing the rest of your edits.

Use this tab to answer audit questions before you ever get to the golden-file reconciliation below — it's the fastest way to explain a specific override.

Validation

The model is continuously validated. The header shows a badge summary — errors, warnings, or clean — and inline messages appear below any cell with an issue. Resolve errors before treating the model as final.


Sections Reference

Rent Roll

Suite-level rent data: base rent, escalations, and lease terms. Derived fields (Rent PSF/year, Rent $/month, Rent Start) are computed automatically from the source values.

Free Rent

Concession periods showing months free, total dollar value, and the application window.

Tenant Improvements (TI)

Landlord-funded buildout allowances, both per square foot and total dollars.

Leasing Commissions (LC)

Brokerage commission schedules, split between procuring and listing brokers. LC totals are derived automatically.

Other Concessions

Catch-all for moving allowances, abated CAM, parking concessions, and other deal-specific items.


Exports

Every snapshot's header offers exports. The model exposes all three; source files expose the ones that apply.

  • Modeling workbook — a one-way XLSX with one sheet per section plus a Summary tab. Yardi-sourced cells render in blue, analyst overlays in yellow, formulas in black, and net-new spec deals get an orange row tint. Totals (Rent $/mo, PSF/yr, LC Total, Improvements $) are live Excel formulas, so the workbook is ready for offline modeling.
  • Yardi LSR (re-import) — projects the merged + edited rows back into the original LSR column layout (sheet name, metadata header, and columns) so the file round-trips into Yardi's import flow.
  • Yardi SMR (re-import / round-trip) — projects the SMR assumptions back into Yardi's SMR import layout. On a raw SMR source this is labelled SMR round-trip; on the model it's Yardi SMR (re-import). The LC 1 value is written as a PSF rate (see SMR above).

Reconciliation & Acceptance

There are two ways to reconcile in the app — pick the one that matches what you're checking.

1. The acceptance test (Golden vs. Model) — runs automatically

Once a property has both a built Forecast Model and an ingested Golden SAP Working Budget, the app reconciles them automatically every time the property page loads. Step 6 of the stepper shows the live result inline:

  • "Matches the golden SAP Forecast — POC acceptance passed" when the comparison is 0 added / 0 removed / 0 changed.
  • Otherwise, a running count: N changed cells · N added · N removed · N suites.

Click the step's link — View reconciliation (or Run reconciliation if the result hasn't loaded yet) — to open the full field-level breakdown.

2. Ad hoc comparison (any two snapshots)

Use this to check what changed between any two snapshots — two LSR uploads, two model versions, anything.

  1. On the property page, find the Compare snapshots card in the right-hand sidebar (below "Accepted workbooks").
  2. Select a Base (older) and a Target (newer) snapshot.
  3. Click Run reconciliation.

Reading the reconcile view

Both paths land on the same reconcile screen, with a search box and Section / Change type filters above a field-level delta table:

ColumnMeaning
SectionWhich canonical section the field belongs to
SuiteThe suite identifier
TenantTenant name (if available)
FieldThe specific field that changed
Changeadded, removed, or changed
BaseValue in the base snapshot
TargetValue in the target snapshot
ΔNumeric difference (for currency/number fields)
NotesAuto-flagged call-outs — e.g. a >5% square footage change, a lease term shift of 12+ months, or a >10% rent PSF change

Numeric fields use a 0.005 epsilon to ignore floating-point noise, and dates normalize to ISO strings before diffing to avoid timezone false positives.

Exporting the variance report

From the reconcile view you can download the full delta as XLSX (full field-level table) or PDF (formatted summary for stakeholders).


Bridge View

When both a model and a golden file exist, the Bridge view gives a guided, side-by-side path to closing the gap. It shows three columns:

  • Source — auto-built — the LSR + SMR merge before analyst edits.
  • Proposed changes — an auto-computed diff toward the golden, grouped by section. Confirm each one to apply it as a real model edit, or use Accept all to apply every outstanding change at once.
  • Golden — POC reference — the hand-built target.

A progress banner tracks confirmed vs. outstanding changes; when none remain, the model matches the golden (0 / 0 / 0).


Managing Data

Resetting a property

Reset property clears all ingested data for that property — its snapshots, lease rows, and edits. Other properties are unaffected. This is destructive and cannot be undone, so you'll be asked to confirm.


Tips & Best Practices

  • Ingest both sources before building. The model is only as complete as the LSR + SMR pair behind it.
  • Use edits sparingly. Every override is one more thing to maintain. Where possible, fix the source data in Yardi.
  • Reconcile before you trust the model. Comparing against the golden file catches surprises before they reach Yardi.
  • Filename hygiene. Use clear, dated filenames for uploads — the snapshot label inherits from the filename.

Troubleshooting

Upload fails with a parsing error

Make sure the file is a standard Yardi LSR/SMR or SAP Working Budget .xlsx with the expected layout. If the format has changed, reach out to the Leasing Bridge team.

A snapshot shows no parsed rows

The upload created a snapshot record but row ingestion failed. Re-upload the workbook from the property page — the server logs the underlying error so the team can diagnose it.

A cell won't accept my value

Currency fields require numeric input (no $ or commas needed). Date fields require a valid date — use the date picker if available. Remember that only the Forecast Model is editable; source files are read-only.

Reconcile shows unexpected differences

Numeric fields use a 0.005 epsilon to ignore floating-point noise. If you still see spurious diffs, check whether the underlying export was rounded differently between the two pulls.

Need more help?

Reach out to the Swig Leasing Bridge team via the Contact & Feedback card on the Support page (leasing-bridge@swig.com).