Required user input:
AHJ Name (e.g., Building Department name)
AHJ Phone Number
Location (City/County)
Future Improvement Suggestion
Incorporate these fields into a Project Information Schedule in Revit so that:
AHJ details, project information, building codes, and wind-borne debris designation are stored as project parameters.
Data is automatically populated on all relevant sheets without manual retyping.
This would allow global updates by editing project parameters in one location, ensuring consistency across the drawing set.
A Generic Annotation title bar is used, followed by manually typed text listing:
Number of residential buildings by type.
Number of smaller amenities (e.g., management garage, six-bay garage, dumpster enclosure, etc.).
Exterior load-bearing wall type.
Primary structural framing material (e.g., wood, masonry).
All values must be manually entered, edited, or deleted by the user depending on project scope.
Convert the manual text into a Generic Annotation with:
User-editable fields for adding or removing specific building/amenity types.
Ability to hide unused fields.
Schedule-based fields
If all project elements are modeled within a single Revit file:
Link the annotation to a schedule that automatically counts each building or amenity type (e.g., total number of Building Type 1, total management garages, total six-bays).
Automate the population of structural framing and wall type fields using project parameters.
This automation would eliminate the need for manual typing and reduce user error.
The Building Codes section lists all applicable codes governing the project, along with their edition year.
This section is preset in the sheet template as static text.
Codes and editions are listed manually, with updates made when:
A new building code edition is released.
Additional local or project-specific codes apply.
Replace static text with a Generic Annotation family containing:
Preloaded building code titles.
Editable fields for edition/year values.
This would allow:
Quick updates when code editions change (e.g., every 3 years).
Consistent formatting across all projects.
A central update process — potentially stored as a Revit library component so all projects reference the same source.
In the Properties Panel, the user edits the sheet family to indicate “Threshold” or “Not Threshold.”
The setting is accessed via Edit Type → Threshold Building (Yes/No).
If “Yes” is selected, “No” is automatically not selected, and vice versa.
Potential Issues:
Only one option appears in the dropdown, which can confuse users.
If “Not Threshold” is selected, there is a risk of the note being deleted entirely.
Modify the family to display both “Threshold” and “Not Threshold” as visible dropdown options in the Properties Panel.
Tie the value to a Project Information parameter so it is defined once and can be automatically applied across all relevant sheets.
Benefits:
Eliminates user confusion.
Prevents accidental deletion of the note.
Ensures consistent application of the threshold designation across all documentation.
In the Properties Panel, the user edits the sheet family to indicate “Wind-Borne” or “Not Wind-Borne.”
The setting is accessed via Edit Type → Wind-Borne Debris Region (Yes/No).
Potential Issues:
Only one option is shown in the dropdown, creating confusion.
If “Not Wind-Borne” is selected, the note can be accidentally deleted.
Link this setting to a Project Information parameter so it is defined once and applied automatically across all relevant sheets.
Modify the family to include both “Wind-Borne” and “Not Wind-Borne” as visible dropdown options in the Properties Panel.
Benefits:
Reduces the chance of user error.
Eliminates the need for repetitive manual updates.
Ensures consistency across all project documentation.
This section specifies the accessibility requirements applicable to the project based on building type and code compliance.
This section is a Generic Annotation family containing multiple preset options for different building types and applicable codes.
The user selects the appropriate building type/code combination in the Type Properties → Visibility settings.
The list includes various categories (e.g., Conventional Multifamily – FBC, Affordable/HUD – IBC, R1 Hotels – FBC).
At the bottom of the list is a “?” option, used only when additional information is specifically requested by the Studio Director (SD) or Project Manager (PM).
Do not edit any of the preset notes or text in this annotation.
The selection must be reviewed and confirmed by the Project Manager or Studio Director before finalizing.
If uncertain which option to choose, consult your PM or SD before making changes.
Before starting, confirm with the Studio Director (SD) whether:
Each Residential Building Type will have its own sheet, or
All Building Types will be combined into one sheet.
These are text-based parameters manually entered for each Building Type.
The Fire Sprinkler field is also manually typed as either “Sprinklered” or “Non-Sprinklered,” with the relevant code section noted.
The user must ensure that the values entered are up-to-date and match project requirements.
Replace text fields with a Detail Component containing dropdown lists for:
Occupancy Type (preset options)
Construction Type (preset options)
Fire Sprinkler (Sprinklered / Non-Sprinklered + code reference)
Dropdown values would be maintained and updated centrally by DT to ensure consistency across projects.
The schedule is static and must be manually updated by the user.
User must look up applicable fire-resistance requirements (hours) for:
Exterior Bearing Walls
Interior Construction
Floor Construction
Other rated assemblies
All values must be verified against the current building code by the user.
Link the schedule directly to Revit wall, floor, and ceiling type parameters so it can automatically read:
Assembly type
Fire rating (hours)
This would allow the schedule to dynamically update as building assemblies are modified.
The sheet contains text stating:
Refer to Sheet A1.11 for Life Safety Plans
If there are multiple sheets, this must be manually updated to reflect the correct sheet numbers.
The user must check the sheet index to confirm the correct references before finalizing.
Single Sheet Reference — e.g., A1.11 for Life Safety Plans
Sheet Range Reference — e.g., A1.11 through A1.13 for Life Safety Plans
This allows the sheet reference to be updated quickly without retyping or reformatting.
The annotation can be reused across multiple projects to ensure consistency in wording and formatting
Text Spacing - in bulleted text
This table summarizes the square footage and quantities of smaller, non-residential buildings (e.g., garages, trash enclosures, pool pavilions) on site.
Created using a Generic Annotation with editable text fields for:
Building # on Site
Building Type
The table automatically:
Calculates Building Total square footage.
Multiplies the building total by Quantity on Site to get Total SF on Site.
Adds a Misc Amenity Total at the bottom.
Limitation: If the number of amenities changes (e.g., more than three private garages or additional amenity buildings), the family must be manually edited to adjust the number of columns/rows — adding to family maintenance workload.
Replace the static Generic Annotation with a Revit Schedule in the main model that:
Pulls Area and Quantity data directly from modeled elements.
Updates automatically as buildings are added, removed, or modified.
Eliminates manual editing of annotation text.This method has been successfully implemented by other teams in the office.
Benefits:
Fully automated updates.
No additional family maintenance.
Reduced user error and time spent manually revising table data.
The Building Area Table displays all building types on site, including:
Residential Building Type
Building Number on Site
Number of Buildings per Unit Type
All of these elements are user-input settings; if we could get Revit to use these from the model and count from the schedule, it would be ideal
The last column shows the total Area (AC, Non-AC, and Gross).
This process requires creating a Gross Building Area Plan in Revit.
Go to View → Plan Views → Area Plan.
In Type, select Gross Building.
Choose the Level (e.g., First Floor).
Uncheck “Duplicate existing view” and click OK.
When prompted about creating automatic area boundaries, click No
Why? Saying “Yes” creates uneditable lines tied to external walls, which makes later adjustments difficult.
In the new Gross Building Area Plan, go to Architecture → Area Boundary.
Using the Line Tool, draw a continuous boundary around the exterior of the building’s core (not the exterior finish).
Divide Interior and Exterior spaces:
Use the Line Tool to draw boundaries separating balconies, breezeways, and other non-conditioned spaces from the interior.
Go to Modify → Align.
Align each area boundary line to the exterior of the building’s core.
Lock each alignment.
Why? If the building footprint changes, the boundary lines update automatically.
Tag Interior Spaces (AC) as one area element.
Tag Exterior Spaces (Non-AC) separately (balconies, breezeways, etc.).
Note: Include balcony framing in the exterior calculation.
Assign the Shared Parameter: AC or Non-AC.
Assign Building Type to each area in the schedule (Type 1, Type 2, etc.). (make BUILDING TYPE a shared parameter in the documentation model)
Ensure the Building Type matches the Residential Building Type in the main A1.02 schedule.
Go to View → Schedules → Schedule/Quantities.
From the list, select Areas (Gross Building) and click OK.
In Fields, add:
Level
Area
AC or Non-AC (Shared Parameter)
Do not filter yet
Re-name the schedule to GROSS AREA.
In Sorting/Grouping:
Sort by Level.
Turn Itemize every instance OFF.
This will display one row per level with total gross area.
Duplicate the Gross Building Area Schedule.
Rename it GROSS AREA - AC.
In Filter, set AC or Non-AC = AC.
In Sorting/Grouping:
Sort by Level.
Turn Itemize every instance OFF.
Duplicate the AC Area Schedule.
Rename it GROSS AREA - NON-AC
In Filter, set AC or Non-AC = Non-AC.
Note: The user must manually assign “AC” or “Non-AC” because Revit cannot detect conditioning status automatically.
In Sorting/Grouping:
Sort by Level.
Turn Itemize every instance OFF.
Confirm that:
Gross Area = AC Area + Non-AC Area
Example:
AC Area = 5,590 SF
Non-AC Area = 2,042 SF
Gross Area should = 7,632 SF
Hide any unnecessary columns (e.g., intermediate calculation columns).
On your GROSS AREA - NON-AC schedule, you will hide the columns for LEVEL and GROSS (aka AREA)
On your GROSS AREA schedule, you will hide the columns for LEVEL, NON-AC, and AC
On your GROSS AREA - AC schedule, you will hide the columns for NON-AC and GROSS (aka AREA)
For the Gross Area Schedule, rename the “Area” column header to GROSS.
For the AC Schedule, rename the “Area” column header to AC.
For the Non-AC Schedule, rename the “Area” column header to Non-AC.
On the A1.02 sheet, place the schedules in the following order for each building level:
AC Area
Non-AC Area
Gross Area
Keep levels grouped together for easy reading.
Before placing schedules on the sheet, enable total calculations:
Open each schedule (AC, Non-AC, and Gross).
Go to Edit → Formatting.
Select the Area field.
At the bottom, check Calculate Totals.
Repeat for each schedule so that the total AC, Non-AC, and Gross appear at the bottom of each list.
Open each schedule (AC, Non-AC, and Gross).
Go to Edit → Formatting.
Select the Area field.
At the bottom, check Calculate Totals.
Repeat for each schedule so that the total AC, Non-AC, and Gross appear at the bottom of each list.
Future Improvement Suggestions
Currently, three separate schedules are used (Gross, AC, Non-AC). In the future, this could be streamlined into one master schedule by:
Using formulas for AC Area and Non-AC Area directly in one schedule.
Eliminating duplicate schedules and column renaming.
Allowing Revit to calculate totals automatically using formulas and filtering by building, the unit graveyard, etc.
Open one of your unit Revit files (any unit type can be used).
This process will be repeated for every single unit type before the A1.02 sheet is complete.
Switch to a floor plan view of the unit.
In the top ribbon, go to Architecture → Room Separator.
Using the Line Tool, trace completely around the perimeter of the unit.
Once enclosed, Align + Lock the boundary lines to the CAD background received from the SD / PM.
Select each interior wall.
In the Properties panel, uncheck Room Bounding (under Constraints).
4. Place the Room & Identify Balcony/Non-AC Areas
4A. Place the Room (Interior Only)
Go to Architecture → Room.
Place the room inside the large blue enclosed area (interior space only).
This room will represent only conditioned (AC) interior area.
4B . Identify Balcony/Exterior Area
Highlight the balcony area separately.
Current Method:
Use a Filled Region to trace over the balcony framing/core structure.
Typically trace from the centerline of a shared balcony or along the structural framing edges.
This will give an area value (e.g., 79.29 SF), but this value will not automatically appear in the schedule.
To make it appear in the schedule:
Return to the Room Boundary for the unit interior.
Go to the Unit Non-AC Area field.
Manually type the area value (or 0 if none exists).
Note: If left blank, the Non-AC schedule field will not populate.
Future Improvement Suggestion
Replace the Filled Region method with an Area or Room specifically designated for Non-AC spaces.
Add a parameter to categorize each as AC or Non-AC (similar to Building Area workflow).
Use an Area Schedule instead of a Room Schedule:
Allows AC/Non-AC tracking via formulas.
Enables easier filtering to include/exclude linked models.
Removes the need for manual data entry of Non-AC square footage.
Name: Use only the unit designation (e.g., A1, A2, B1, B1-End).
Do not include the word UNIT in this field
Unit Type: Follow this exact format in ALL CAPS:
[#] BED / [#] BATH
Example: 2 BED / 2 BATH
Use spaces as shown
“BED” and “BATH” must be capitalized
This formatting allows filtering in schedules later
In the main model, create a Room Schedule
Add the following fields:
Unit Type
Name (Unit Name)
Area (Unit Gross Area)
Unit Non-AC Area (if used)
Unit Total Area (a formula-based parameter adding Area + Unit Non-AC Area)
Unit Count
Unit Percentage
Relevant File Link (to identify linked models)
If all units are combined into one schedule in the main model, ensure Name is included for proper filtering and tracking.
Since all units will be shown in one model, we need to set filters that only display actual units (not amenities, not other rooms).
In Filters, set:
Unit Type → Contains → BATH
Why: This will capture only unit spaces, because “BATH” (in all caps) is only found in Unit Type names per our standard naming convention.
Optional Future Filters:
Building Type – If units need to be sorted or counted by building type.
Name does not equal… – Use this to exclude special-purpose models like the “Unit Graveyard” (see Step 10).
Sort By:
First: Name (e.g., A1, A2, B1…) so that the sequence matches unit designation.
Second: Area – This ensures that ascending name order also roughly matches smallest-to-largest unit size.
Itemize Every Instance: OFF
This will group identical units together.
Grand Totals / Calculations:
For now, do not apply grand totals (this may be re-evaluated later when we add total-by-building-type).
To manage linked extra units used for annotation purposes (“Unit Graveyard”):
Assign distinct names to all graveyard units so they can be identified in filters.
In the Unit Area Table Filter, exclude these with:
Name does not equal [graveyard name]
Or Name does not contain GRAVEYARD (if consistent naming is used).
This ensures unit counts and totals are not inflated by duplicate annotation models.
Future Improvement Suggestion (Cont...)
Add Building Type field from the Building Area Table process into the Unit Area Table.
Use Filters to get totals for only a specific Building Type (e.g., Building Type 1).
Add calculated fields to determine percentage of each unit type per building type or site total.
This may require experimenting with formulas in a Room Schedule vs. Area Schedule.
Consider creating this as an Area Schedule (Unit Area) instead of a Room Schedule to leverage Building Type fields and AC/Non-AC formulas in one place.
In your main model, go to Manage → Manage Links.
Make sure you are in the Revit tab.
Click Add and insert one link at a time for each unit type.
These links should be the individual unit models stored in the Unit Graveyard.
Linking these ensures that:
You only get the intended unit without adjacent units showing.
Views remain stable if units move during early project stages.
Be in a Floor Plan view when linking units.
Create a new Floor Plan for each linked unit.
Name each view using this format:
Unit Type [Unit Name]
Example: Unit Type A1, Unit Type B1, etc.
Activate the Crop Region for the view.
Crop tightly around the single unit so no surrounding spaces appear.
Future Improvement Suggestion
Current Method: No title block label for these diagrams.
Future Suggestion: Add a consistent title below each diagram in this format:
Unit Type [Unit Name]
[#] BED / [#] BATH
Example:
Unit Type A1
1 BED / 1 BATH
This would reduce redundancy and ensure consistent presentation across sheets.
These diagrams show the full building layout in an isometric-style arrangement, currently built directly on the A1.02 sheet using stacked generic annotations and detail lines.
Insert the Building Unit Diagram Generic Annotation directly onto the A1.02 sheet (not in a separate 3D or drafting view).
Stack Annotations to Form Building Shape:
Arrange unit diagrams either adjacent or across from each other to match the floor plan layout.
Outline the Building Footprint:
Use detail lines directly on the sheet with a thick pen line style to trace the full building outline.
Stack levels vertically:
Level 1 at the bottom.
Level 2 above it, Level 3 above that, etc.
Use a very light 0-weight line style for alignment references.
Add Firewalls and Other Elements:
Indicate firewalls, stairs, and other building components as needed.
Current Issues with Current Workflow...
Model Verification: This method requires repeated checks against the live model because building layouts often change.
Unit Size Variability: Some units may double in size or change orientation, making manual stacking and text editing prone to errors.
Flexing Layouts: Unit arrangements can change between design stages, requiring full rework.
Redundant Data Entry: Unit names, types, and counts are retyped, creating opportunities for mistakes.
Non-Linked to Live Model: Changes in the Revit model do not automatically update the diagram — it is entirely manual.
Create Linked 3D Views Instead of Static Sheet Graphics:
Generate 3D axonometric/isometric views directly from the live model.
Remove all unit / interior elements except:
Room names
Room boundaries/spaces
Create a new room tag used only for 3D view to display the unit name/type.
Stack floor plans in 3D to match actual floor levels.
Because the view is tied to the live model:
Any unit size/orientation changes are reflected automatically.
Redundant redrawing and data entry is eliminated.
Unit(s) in Schedule Form
Instead of manually typing unit counts in the diagram area:
Create a Room Schedule filtered for units only.
Sort by Room Name and Type.
Display:
Number of Units per Name/Type
Unit Type description (e.g., 2 BED / 2 BATH)
Grand Total of all units
Format the schedule to visually match the current table style used in the diagram area — but driven by live model data.
F.GANN.Title Bar.Non Parametric
Title Bar - Click for more information
F.GANN.Title Bar.Index.Non Parametric
Sheet Index - Click for more information
This is a Family with multiple instances of Text with each linked to a visibility parameter and each instance overlayed.
The content of this family is maintained in a Microsoft Word .doc Authored by Andrew Roark on a private Sharepoint drive.
Updated: 5.4.22